什么是#if DEBUG,以及如何在C#中使用它?

在Visual Studio调试模式和发布模式下,用于构建.Net项目的配置不同。

选择用于逐步调试其.Net项目的“调试”模式,然后为“最终”汇编文件(.dll或.exe)选择“发布”模式。

调试模式不会优化其生成的二进制文件,因为源代码和生成的指令之间的关系更加复杂。

这样可以准确设置断点,并允许程序员一次在代码行中单步执行。

程序的Debug配置将使用完整的符号调试信息进行编译,这有助于调试器确定其在源代码中的位置。

程序的发行版配置没有符号调试信息,并且已完全优化。

更改构建配置

从“生成”菜单中,选择“配置管理器”,然后选择“调试”或“发布”。

要么

在工具栏上,从“解决方案配置”列表中选择“调试”或“发布”

仅在调试模式下运行的情况下,才会执行在#if调试代码中写入的代码

如果代码在发布模式下运行,则#if Debug将为false,并且不会执行该代码中包含的代码

示例

class Program {
   static void Main() {
      #if DEBUG
      Console.WriteLine("You are in debug");
      #endif
      Console.ReadKey();
   }
}

如果程序在调试模式下运行,则If bloc将返回true

并打印“您正在调试”

如果程序不在调试模式,则如果Debug返回false