VC运行时库
来源:互联网 发布:java软件项目做什么好 编辑:程序博客网 时间:2024/04/30 01:06
VC项目属性→配置属性→C/C++→代码生成→运行时库可以采用的方式有:
多线程(/MT)、多线程调试(/MTd)、多线程DLL(/MD)、多线程调试DLL(/MDd)
其中以小写“d”结尾的选项表示的DEBUG版本的,没有“d”的为RELEASE版本。大型项目中必须要求所有组件和第三方库的运行时库是统一的,否则将会出现LNK2005井喷。
/MT和/MTd表示采用多线程CRT库的静态lib版本。该选项会在编译时将运行时库以静态lib的形式完全嵌入。该选项生成的可执行文件运行时不需要运行时库dll的参加,会获得轻微的性能提升,但最终生成的二进制代码因链入庞大的运行时库实现而变得非常臃肿。当某项目以静态链接库的形式嵌入到多个项目,则可能造成运行时库的内存管理有多份,最终将导致致命的“Invalid Address specified to RtlValidateHeap”问题。另外托管C++和CLI中不再支持/MT和/MTd选项。
/MD和/MDd表示采用多线程CRT库的动态dll版本,会使应用程序使用运行时库特定版本的多线程DLL。链接时将按照传统VC链接dll的方式将运行时库MSVCRxx.DLL的导入库MSVCRT.lib链接,在运行时要求安装了相应版本的VC运行时库可再发行组件包(当然把这些运行时库dll放在应用程序目录下也是可以的)。 因/MD和/MDd方式不会将运行时库链接到可执行文件内部,可有效减少可执行文件尺寸。当多项目以MD方式运作时,其内部会采用同一个堆,内存管理将被简化,跨模块内存管理问题也能得到缓解。
- VC运行时库
- VC运行时库
- VC运行时库
- VC运行时库
- VC运行时库
- VC运行时库
- VC 运行时库详解
- VC配置运行时库
- VC编译DLL时,如何不依赖VC运行库
- VC编译DLL时,如何不依赖VC运行库
- VC运行时库类型分析
- VC运行时库的一些资料
- VC++中的C运行时库浅析
- VC++中的C运行时库浅析
- VC运行时库(/MD、/MT) 说明
- VC运行库详解
- VC++.NET 运行库
- vc 运行库
- 孙鑫VC++讲座笔记-(4)MFC消息映射机制的剖析
- 二进制文件与文本文件的区别
- Visual Studio 快捷键
- 御龙在天---我们的游戏,我们的梦想
- char, BSTR, _bstr_t, CComBSTR之间的互相转换(转载)
- VC运行时库
- 索引分配between LINUX and UNIX OS
- Struts 2的基石——拦截器(Interceptor)
- Winforms:Windows 7中Taskbar的新效果(4)——缩略图工具栏
- Linux下安装Sybase ASE时的环境变量LD_POINTER_GUARD的含义
- 字体的故事之:衬线体的前世今生
- map set list 区别
- 商品交易系统之---功能架构探讨
- Java入门总结