无论是Release模式的应用程序项目还是库(静态库、动态库)项目,C++项目在Release模式下可调试运行,VS2019配置如下:
1、Release模式的调试设置,工程项目上右键 -> 属性
(1)C/C++ -> 常规 ->调试信息格式 选择 程序数据库(/Zi)或(/ZI), 注意:如果是库项目的话,只能(Zi)
![](https://img-blog.csdnimg.cn/img_convert/3292a053f282f5cc09b705e9babf92c2.png)
(2)C/C++ -> 优化 ->优化 选择 已禁用(/Od)
![](https://img-blog.csdnimg.cn/img_convert/de0da128baf440a54f63e24ca89b16c1.png)
(3)链接器 ->调试 ->生成调试信息 选择 生成调试信息(/DEBUG)
![](https://img-blog.csdnimg.cn/img_convert/8c3bec37665bcb35300b6991eafcfa35.png)
然后就可以像在Debug模式下一样运行,进行调试了。
2、Release模式的动态库运行调试
假设有两个项目,TestExe和TestDll,由项目名字就知道一个是库项目,一个是应用程序,TestExe调用TestDll。如果要调试Release模式的库(静态库、动态库)项目TestDll源码的话,需要做如下设置:
(1)在VS2019开发环境中右击TestDll项目,选择【配置属性】->【调试】->【命令】中输入TestExe的绝对路径(例如:E:\Experiment\TestExe\Release\TestExt.exe)或者相对路径(例如:$(SolutionDir)$(Platform)\$(Configuration)\TestExe.exe或..\x64\ReleaseTestExt.exe)。
![](https://img-blog.csdnimg.cn/img_convert/b8f208721fa8164ed0387033afabb595.png)
(2)确保TestDll的输出和TestExe输入的DLL为同一个lib和dll文件。
![](https://img-blog.csdnimg.cn/img_convert/da33e8e9ab23dd6c26fe76154a6ec79d.png)
(3)设置TestDll为启动项目,直接启动调试即可。
![](https://img-blog.csdnimg.cn/img_convert/aa62e132e711b4a73d60faf62b6c8c8d.png)
![](https://img-blog.csdnimg.cn/img_convert/dc42f8f8a5caba32b10f0697aef23364.png)
![](https://img-blog.csdnimg.cn/img_convert/8c29096b949bad642d9d32f328983ad0.png)