首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> C# >> C# 入門

C# 預處理器指令詳解:#define/#if/#elif/#else/#endif/#region/#error/#warning

     編輯:C# 入門

C# 預處理器指令詳解:#define/#if/#elif/#else/#endif/#region/#error/#warning

預處理器指令在編譯前處理源碼,以 # 開頭,非語句(無分號)。C# 無獨立預處理器,但指令行為類似。主要用於條件編譯,不創建宏(異於 C/C++)。

指令列表

指令功能
#define定義符號
#undef取消符號
#if / #elif / #else / #endif條件編譯塊
#line修改編譯器行號/文件名
#error生成編譯錯誤
#warning生成編譯警告
#region / #endregionVS 編輯器代碼折疊區域

#define 定義符號

#define PI
#if PI
    Console.WriteLine("PI defined");
#else
    Console.WriteLine("PI not defined");
#endif

條件編譯邏輯

支援運算符:== != && ||、括號分組。示例:

#define DEBUG
#define VC_V10
#if (DEBUG && !VC_V10)
    Console.WriteLine("DEBUG only");
#elif (!DEBUG && VC_V10)
    Console.WriteLine("VC_V10 only");
#elif (DEBUG && VC_V10)
    Console.WriteLine("Both defined");  // 輸出此行
#else
    Console.WriteLine("None");
#endif

實用場景

  • 調試版本包含日志,發布版本排除:#if DEBUG
  • 平台特定代碼隔離
  • #error 強制編譯失敗提示配置錯誤
  • #region 整理大文件結構

預處理器指令必須獨佔一行,前面只能有空白字符。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved