EKsumic's Blog

let today = new Beginning();

Click the left button to use the catalog.

OR

C# 中 # 指令的全面指南:預處理指令的簡潔應用

在 C# 中,# 符號引入預處理指令,用於在編譯期間控制代碼的特定行為。以下是 C# 中 # 指令的主要用法:


1. #define#undef

  • #define:定義一個符號,用於控制條件編譯。
  • #undef:取消一個已定義的符號。

C# 中 #define 和 #undef 指令的使用:基礎與應用

 

2. #if#elif#else#endif

  • 控制條件編譯,根據符號是否被定義來決定哪些代碼會被編譯。

注意:#if#elif#else#endif 依賴於符號的定義1和2是組合出現的),這些符號通常由 #define 指令來設定,或者在項目設置中配置為條件編譯符號。

 

3. #warning#error

  • #warning:生成編譯時警告,提醒開發者注意。
  • #error:生成編譯錯誤,阻止編譯,用於強制解決問題。

C# 中的 #warning 和 #error 指令:用法與場景簡介

 

4. #region#endregion

  • 將代碼分組,便於在編輯器中折疊,但不影響編譯。

評價:最常用的功能,僅為摺叠代碼。

 

5. #pragma

  • #pragma warning disable/restore:禁用或恢復特定警告。
  • #pragma checksum:用於指定文件校驗和,常見於 ASP.NET 項目中。(通常自動生成,無需手動添加)

評價:輔助性指令,主要用於編譯控制中的靈活調整,能避免不必要的警告影響開發。

C# 中的 #pragma 指令簡介


關於1和2再舉例

 

假設你在項目裏預定義了指令Trump;Harris:

#undef Harris
using System;

namespace test_
{
    internal class Program
    {
        static void Main(string[] args)
        {

#if Harris
            Console.WriteLine("HARRIS THE WINNER!");
#endif

#if Trump
            Console.WriteLine("TRUMP THE WINNER!");
#endif

        }
    }
}

那麽這份代碼只會輸出"TRUMP THE WINNER!"

This article was last edited at 2024-11-07 17:05:06

* *