用条件属性而不是#if

匿名 (未验证) 提交于 2019-12-02 22:10:10

   使用#if   #endif可以在同样源码上生成不同的编辑(结果),通常是调式(debug)和发布(release)版本。

   但是#if/#endif很容易被滥用,使得编写的代码难以理解和调式,所以C#提供了条件特性(Conditional attribute)来识别哪些方法可以根据环境设置来判断是否应该被调用。

   条件特性比条件编辑#if  #endif更加清晰明白,所有优秀使用Conditional attribute

     [Conditional("DEBUG")]//只在Debug模式下test方法才会被调用         public static void Test()         {             Console.WriteLine("Debug");         }

总结:编译器使用Conditional特性来帮助开发者使用#if   #endif 而产生常规错误。条件特性比起预处理,它为区分条件代码提供了更好的区分

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!