C# 中的#if、#elif、#else、#endif等條件編譯符號


C#編譯器遇到一個由#if和#endif包圍起來的語句塊時,會檢查#if后面的符號是否已經被定義了,如果已經被定義,那么才會編譯語句塊之間的代碼。而定義一個可以被#if測試的符號需要事先用#define指令定義。

#define MACRO1

 using System;

   public class Program

  {

     public static void Main()

     {

       #if (MACRO1)

         console.writeline("MACRO1 is defined.");

       #elif (MACRO2)

         console.writeline("MACRO2 is defined and MACRO1 is not defined");

       #else

         console.writeline("MACRO2  and MACRO1 are both defined");

       #endif

     }

  }

如果用vs,會看到開發環境將不編譯的代碼顯示為灰色。符號常量必須在using指令之前定義。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM