C#预处理指令的使用及理解
2013-11-18 15:26
197 查看
#define DEBUG //定义 //#undef DEBUG//销毁定义的 /* C#预处理指令 必须定义在源文件代码的开始 C#预处理指令用于版本控制,例如测试版本和正式版本的功能限制。 编译器会根据实际逻辑去编译代码。 */ namespace Frank { public class Test { #pragma warning disable 169 //禁用编译指示警告信息 int age;//编译指示警告“从不使用字段”将不会显示出来 #pragma warning restore 169//恢复编译指示警告信息 int age2;//显示出编译指示警告 public static void Main(string[] args) { #if DEBUG //判断是否存在 System.Console.WriteLine("1");//存在就会执行里面的代码 #endif //嵌套 if #if DEBUG System.Console.WriteLine("DEBUG"); #elif DEBUG2 System.Console.WriteLine("DEBUG2"); #else System.Console.WriteLine("DEBUG3"); #endif//结束语句 //支持逻辑运算符 #if DEBUG && (DEBUG2 == false) System.Console.WriteLine("123"); #endif //#error "程序错误!"//输出错误消息,不会编译为IL代码 #warning "警告!"//输出一条警告后继续编译成IL代码 //标记快,被某些编辑器识别使之更好的布局,例如VS #region #endregion //改变编译器在警告和错误信息中显示的文件名和行号信息 #line 164 "Core.cs" //#error "154sadsa";//输出错误信息,改变了实际的行号和文件 #line default //还原默认的 //#error "1231";//输出的错误和警告消息是根据行号来排序的,所以当前输出的消息在它前一个消息之前。 #if DEBUG2//为输出错误增加条件,C# if语句中将会无效。 #error "1" #endif } } }
相关文章推荐
- 不只是给面试加分 -- Java WeakReference的理解与使用
- 对处理字符以及字符串的理解!String类的使用!
- Java之FileChannel类的理解和使用
- 一步步学习SPD2010--第八章节--理解工作流(2)--使用SPD创建工作流
- js中的call()方法理解和使用
- 通过一个登陆程序来理解几个jsp内置对象的使用
- 我所理解的JDK异常(二):try-catch-finally的使用
- 我对百度云盘的理解及使用
- HTTP协议理解 + PHP使用curl函数发送Post请求的注意事项
- JAVA中关于set()和get()方法的理解及使用
- 索引 视图 存储过程和函数 简单理解 以及使用创建方法
- 你对MVC的理解,MVC有什么优缺点?结合Struts,说明在一个Web应用如何去使用?
- 索引 视图 存储过程和函数 简单理解 以及使用创建方法
- NSString,NSMutableString使用retain, copy理解
- 线程理解之经典,同时测试了isAlive的使用。
- Advanced PHP Programming -- 如何理解 Console/Getopt.php 的使用 P129
- java 泛型 泛型类、泛型方法的使用与理解
- iOS 沙盒机制的理解和使用
- 不只是给面试加分 -- Java WeakReference的理解与使用
- Android基础知识_Context的理解及使用