Monodevelop 将 #if 和 #endif 之间的所有内容标记为 C# 文件中的注释

标签 monodevelop preprocessor-directive

我使用的是与 Unity 游戏引擎捆绑在一起的 MonoDevelop 版本。我以前从未在 C# 中使用过#if/#endif,所以我从未注意到这一点。我在一个新的空文件上检查了这一点。我该如何解决这个问题?

最佳答案

我已经对此进行了一些尝试,我注意到的是 a 的条件代码 “#if DEBUG” block 被注释掉。当您开始构建发布代码时,它可能会有所帮助。 “调试”测试内容保留在您的代码中,但看起来像注释。这是我用来测试的东西,ymmv:

using System;
namespace testConditionalCompile
{
   class MainClass
   {
      public static void Main (string[] args)
      {

#if RELEASE         
          Console.WriteLine("Release code"); 
#endif          

#if DEBUG   
          Console.WriteLine("Debug code");          
#endif
        }
    }
}

我意识到条件代码块不是编写它的最佳方式,但我认为它可能最好地说明我上面的观点。

关于Monodevelop 将 #if 和 #endif 之间的所有内容标记为 C# 文件中的注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12917699/

相关文章:

c# - 单声道项目: How do I assign a C# generic list as a TableView's datasource?

android - Android 或 MonoDroid 中的双向数据绑定(bind)?

使用 C 预处理器指令检查编译时间

ios - MonoTouch:无法创建PSTitleValueSpecifier

node.js - 为什么我会收到此错误? r1= buf1.比较(buf2); ^ 类型错误 : Object Rahul has no method 'compare'

c - main 中的预处理命令

c - 除了使用预处理器指令之外,还有其他方法可以避免类型冲突吗?

c - 在 C 中替换宏中的宏

c - 预处理阶段和多个文件(基础)

macos - 如何在 OS X 上使用 mdtool 构建 .sln 文件