C#學習筆記:預先處理指令

來源:互聯網
上載者:User

標籤:調試   htm   而在   文章   for   決定   depend   ace   自己   

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個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.