C# 所有註解類型介紹,那些你該知道的註解

基本註解

單行註解:
    
// 註解
    

多行註解:
    
    /*
    多行註解
    */
    

註: 多行註解如果依據特定的格式可以被用來輔助提示參數內容格式,延伸閱讀:C# 小技巧 參數內容提示

功能型註解

在註解中包含特定的關鍵字就會被開發工具標記並儲存起來,可以被用來快速導航到該行程式碼。
其中最常見的就是「TO DO」了,這個代表代辦事項,基本上所有編輯器預設都有支援,其他類型的則是要看各個編輯器的設定,但是通常都能自行增加。

筆者這裡就列出兩個最常用的編輯器中預設的功能型註解:

Visual Studio:
會出現在「工作清單」中
註:在 Visual Studio 2022 中 NOTE 被從預設列表中移除了,所以圖片中沒有出現 NOTE 項目
  
        // HACK: 這是 HACK 範例
        // NOTE: 這是 NOTE 範例
        // TODO: 這是 TODO 範例
        // UNDONE: 這是 UNDONE 範例
        // UnresolvedMergeConflict: 這是 UnresolvedMergeConflict 的範例
    


Rider:
  
        // todo: 這是 todo 範例
        // bug: 這是 bug 範例
    


程式碼區塊

將某段區域的程式碼包圍,能夠展開和收合
嚴格來說它並不是註解,但他可以達成註解的功能
  
        #region 程式碼區塊

        #endregion
    

說明文件註解

包含 XML 標記的註解,支援很多 XML 語法,滑鼠懸停時會有提示可以快速查看
  
    /// <summary>
    /// XML 文件註解,註記主要功能說明
    /// </summary>
    /// <param name="userId">傳入使用者 ID</param>
    /// <returns>使用者名稱</returns>
    

Visual Studio:
Rider

註:在 XML 註解中小於符號「<」無法顯示,會提示錯誤,應該要替換為「&lt;」

常用 XML 標記範例:
  
    /// <summary>
    /// 主要功能說明
    /// </summary>
    /// <param name="傳入參數名稱">傳入參數說明 ID</param>
    /// <returns>回傳內容</returns>
    

使用 see 可以建立指向成員或是 URL 連結,例如:
  
    /// <summary>
    /// 這個是 <see href="https://www.ruyut.com/">Ruyut 部落格連結</see>
    /// 這個是可以跳轉到 <see cref="myproject.model.User"> User 物件說明的連結</see>
    /// </summary>
    

remarks 用於補充 summary 的訊息,可能包含更冗長的解釋
  
    /// <remarks>
    /// 這個是一個非常詳細的說明,
    /// 很認真的描述,這些文字可能會告訴你該如何使用,
    /// 可能會遇到什麼問題,甚至提供一些範例
    /// </remarks>
    



參考資料:
使用工作清單
XML 文件註解

留言