C#学习笔记:预处理指令
生活随笔
收集整理的這篇文章主要介紹了
C#学习笔记:预处理指令
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
C#和C/C++一樣,也支持預處理指令,下面我們來看看C#中的預處理指令。
#region
代碼折疊功能,配合#endregion使用,如下:
點擊后如下:
條件預處理
條件預處理可以根據給出的條件決定最終進行編譯的代碼,換句話說可以排除掉指定的代碼不進行編譯。
#define
定義一個宏,注意只要定義名稱就行了,不需要值。
一般會把宏定義寫在第一行。
#define IOS這樣就表示IOS這個宏被定義出來了。
#undef
取消一個宏定義,如下:
#undef IOS這樣可以取消IOS這個宏定義。
#if、#else、#elif、#endif
具體使用的指令,下面給出示例:
1 #define ANDROID2 #define IOS3 #undef IOS4 5 using System;6 7 namespace Study8 {9 class Program 10 { 11 static void Main(string[] args) 12 { 13 14 #if ANDROID 15 Console.WriteLine("Android 平臺的代碼寫這里。"); 16 #elif IOS 17 Console.WriteLine("IOS 平臺的代碼寫這里。"); 18 #else 19 Console.WriteLine("其他平臺的代碼寫這里。"); 20 #endif 21 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
轉載于:https://www.cnblogs.com/lancidie/p/7346551.html
總結
以上是生活随笔為你收集整理的C#学习笔记:预处理指令的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ROS中使用罗技G29遥控器
- 下一篇: ch12 GUI