运行库是指程序运行时必需的一些DLL程序,例如Visual C++编写的程序一般需要msvcrt.dll,如果使用了MFC,那么还需要mfc??.dll。其他语言编写的程序同样需要他的支持程序。运行库就是提供了很多程序运行需要的函数,其实Win32API就是由几个系统的DLL提供的。

解决方案 »

  1.   

    可我看的书上说运行库在70年代就有了,当时的c运行库不支持多线程,
    70年代有Dll吗?不可能!
      

  2.   

    我理解是这样:
    普通的类,你必须先声明一个实例,再使用。但运行库不用。
    例如,你使用CMyClass类的方法,
    CMyClass m_instance;
    m_instance......;但是,有的地方你不能(不必)用实例名。
    如声明线程时:
    AfxBeginThread(
                RUNTIME_CLASS(CMyClass),  //!!你不需要用m_instance!!
                THREAD_PRIORITY_NORMAL,
                0,
                CREATE_SUSPENDED);
    但是,你又需要实例化!所以,RunTImeClass提供动态创建。
      

  3.   

    运行库时程序运行时所需要的一些支持程序(系统扩展),(类似的有,数据库程序需要数据库环境支持,像数据引擎之类)。Windows下,运行库主要是DLL库文件,包括系统的和用户程序的,API的确是由DLL库提供的。VC的运行库时msvcrt.dll,另外mfcxx.dll提供MFC支持。msvcrt.dll提供几千个C函数,即使是像printf这么低级的函数都在msvcrt.dll里。其实你的程序运行时,很大一部分时间时在这些运行库里运行。
      

  4.   

    你说的可能是运行时态库,简称运行库。它其实是VC中LIB目录下的.lib文件,这些文件里包含有C语言各种函数的二进制代码,比如printf()函数。这种库在很早以前就有了,现在还在使用。