可能重复: 在.NET 中调试与发布 调试/发布差异
在生成项目时,VisualStudio 中的发布和调试模式之间有什么区别?
主要区别在于,在调试模式下编译 pdb 时,还会创建允许调试的文件(这样您可以在代码运行时逐步执行)。然而,这意味着代码没有得到很好的优化。
这取决于您使用的是哪种语言,但通常它们是两种不同的配置,每种配置都有自己的设置。默认情况下,Debug 在已编译的文件中包含调试信息(允许轻松调试) ,而 Release 通常启用了优化。
就条件编译而言,它们各自定义了不同的符号,可以在程序中检查这些符号,但它们是特定于语言的宏。
Debug 和 放手只是不同 溶液配置的标签。你可以添加其他如果你想要的。我曾经参与的一个项目有一个名为“ Debug Internal”的项目,用于打开应用程序的内部编辑特性。你可以看到这一点,如果你去 Configuration Manager...(它在 Build菜单)。您可以在 配置管理器对话框下找到更多关于 MSDN 库的信息。
Configuration Manager...
Build
然后每个 解决方案配置由一组 项目配置组成。同样,这些只是标签,这次是用于项目的设置集合。例如,我们的 C + + 库项目有名为“ Debug”、“ Debug _ Unicode”、“ Debug _ MT”等项目配置。
可用的设置取决于正在生成的项目类型。对于一个。NET 项目,它是一个相当小的集合: #defines 和一些其他的东西。对于一个 C + + 项目,需要调整的内容要多得多。
#define
不过,一般来说,如果您希望在关闭优化器的情况下构建项目,或者希望在构建中包含完整的调试/符号信息(在。(通常是 PDB 文件)。如果您希望打开优化器,并且 不要希望包含完整的调试信息,那么您将使用“发布”。