首页 > 代码库 > C#学习笔记:预处理指令
C#学习笔记:预处理指令
C#和C/C++一样,也支持预处理指令,下面我们来看看C#中的预处理指令。
#region
代码折叠功能,配合#endregion使用,如下:
点击后如下:
条件预处理
条件预处理可以根据给出的条件决定最终进行编译的代码,换句话说可以排除掉指定的代码不进行编译。
#define
定义一个宏,注意只要定义名称就行了,不需要值。
一般会把宏定义写在第一行。
#define IOS
这样就表示IOS这个宏被定义出来了。
#undef
取消一个宏定义,如下:
#undef IOS
这样可以取消IOS这个宏定义。
#if、#else、#elif、#endif
具体使用的指令,下面给出示例:
1 #define ANDROID 2 #define IOS 3 #undef IOS 4 5 using System; 6 7 namespace Study 8 { 9 class Program10 {11 static void Main(string[] args)12 {13 14 #if ANDROID15 Console.WriteLine("Android 平台的代码写这里。");16 #elif IOS17 Console.WriteLine("IOS 平台的代码写这里。");18 #else19 Console.WriteLine("其他平台的代码写这里。");20 #endif21 22 Console.Read();23 }24 }25 }
而在Unity中,已经对对应的平台和版本定义了相应的宏,可以查看下面的链接:
http://docs.unity3d.com/Manual/PlatformDependentCompilation.html
#warning、#error
这两个指令可以使编辑器进行警告和报错,一般和条件指令搭配,用于调试。
1 #warning 这里不应该这么写!2 #error 这里这么写是错误的!
#line
配合#warning和#error使用,可以设置报错或警告的具体行数。
1 //200 行的问题2 #line 200 "可选的文件名,表示具体有问题的文件,不用加后缀名。"3 //恢复行数为当前行数4 #line default
#pragma
这个指令可以通过我们自己扩展来完成特定的功能,这里就不多讲,给大家一个文章链接:
http://blog.csdn.net/jx_kingwei/article/details/367312
C#学习笔记:预处理指令
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。