VS中Debug和Realease,及静态库和动态库的区别整理

VS中Debug和Realease,及静态库和动态库的区别整理,第1张

一、Debug和Realease区别产生的原因
Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。Release 称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用。
Debug 和 Release 的真正区别,在于一组编译选项。
Debug 版本
参数 含义
/MDd /MLd 或 /MTd 使用 Debug runtime library(调试版本的运行时刻函数库)
/Od 关闭优化开关
/D "_DEBUG" 相当于 #define _DEBUG,打开编译调试代码开关(主要针对assert函数)
/ZI
创建 Edit and continue(编辑继续)数据库,这样在调试过程中如果修改了源代码不需重新编译
GZ 可以帮助捕获内存错误
Release 版本
参数 含义
/MD /ML 或 /MT 使用发布版本的运行时刻函数库
/O1 或 /O2 优化开关,使程序最小或最快
/D "NDEBUG" 关闭条件编译调试代码开关(即不编译assert函数)
/GF 合并重复的字符串,并将字符串常量放到只读内存,防止被修改
Debug 和 Release 并没有本质的界限,他们只是一组编译选项的集合,编译器只是按照预定的选项行动。
相关经验: 转自>可以,一般我试过,直接自己程序调用了同一工程的DLL,多数情况下是可以像exe一样调试的,如果不能的话,可以点击菜单栏的“调试”——“附加到进程”来附加加载了DLL的进程来调试DLL

1打开Visual Studio 2010
2
新建项目:文件》新建》项目
选择Visual c++》Win32 项目》输入项目名称,选择保存目录,单击“确定”按钮
进入Win32应用程序向导,单击“下一步”按钮
应用程序类型选择DLL,附加选项选择空项目,单击“完成”按钮
添加新类头文件:在项目的头文件目录上单击鼠标右键》添加》新建项
已安装的模板选择Visual C++》头文件》输入文件名称,单击“添加”按钮
添加新类源文件:在项目的源文件目录上单击鼠标右键》添加》新建项
已安装的模板选择Visual C++》c++文件》输入文件名称,单击“添加”按钮
为新类添加内容。内容如下:
头文件simpleDLLh:
源文件simpleDLLcpp:
步骤阅读
生成解决方案,OK,下一篇讲如何用VS2010编写动态链接库DLL的单元测试用例,调用DLL测试正确性

manifest里面的版本信息大版本号一定要一致,小版本号一定要等于或者大于你程序依赖的CRT的小版本号。
其实你这两个版本,很可能是因为sp版本造成的,没必要纠结。6195版本如果本机没有,那说明已经被升级覆盖了吧(这可能是sp安装包做的不好造成的)。
762版本存在,那么手动编辑删除6195那一行就可以了。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/13375447.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-24
下一篇 2023-07-24

发表评论

登录后才能评论

评论列表(0条)

保存