C++代码注释详解
常用注釋語法
- 注釋寫在對應(yīng)的函數(shù)或變量前面。JavaDoc類型的多行注釋風(fēng)格如下:
- 一般注釋中有簡要注釋和詳細(xì)注釋,簡要注釋有多種標(biāo)識方式,這里推薦使用@brief命令強(qiáng)制說明,例如:
- @brief之后為簡要注釋,簡要注釋結(jié)束的標(biāo)志是一個(gè)點(diǎn)號,或一個(gè)空行。簡要注釋之后的注釋為詳細(xì)注釋,因此也可以寫成:其中\(zhòng)n為換行符。
- 下面對幾種注釋類型進(jìn)行描述。
文件頭注釋
- 一般@file后為空,Doxygen會默認(rèn)為是@file所在文件的文件名。[]表示可選,{}表示重復(fù)0到N次,<>表示必須參數(shù),@author表示作者,@data表示日期,@version表示版本號。
類注釋
- header-file是類聲明所在的頭文件名字,header-name是要顯示的鏈接文字,一般為頭文件的真實(shí)路徑。
函數(shù)注釋
/** * @brief brief description. * {@param <parameter-name> <parameter description>} * @exception <exception-object> <exception description> * {@exception <exception-object> <exception description>} * @return <description of the return value> * {@return <description of the return value>} * @note <text> * @remarks <remark text> * {@remarks <remark text>} * [@deprecated <description>] * [@since when(time or version)] * [@see references{,references}] */| @param | 參數(shù)名及其解釋(param后加[in]表示輸入?yún)?shù),param后加[out]表示輸出參數(shù)) |
| @exception | 用來說明異常類及拋出條件 |
| @return?? | 對函數(shù)返回值做解釋 |
| @note?? | 表示注解,暴露給源碼閱讀者的文檔 |
| @remark? | 表示評論,暴露給客戶程序員的文檔 |
| @since | 表示從那個(gè)版本起開始有了這個(gè)函數(shù) |
| @deprecated | 引起不推薦使用的警告 |
| @see? | 表示交叉參考 |
?成員注釋
- /**<用來注釋成員,放在成員后面,格式如下:
- 此語法對成員函數(shù)也適用。對于枚舉類型也可采用這種注釋,如下:
項(xiàng)目符號標(biāo)記注釋
/** * A list of events: * - mouse events * -# mouse move event * -# mouse click event\n */ 結(jié)果為:A list of events:。mouse eventsmouse move eventmouse click event分組注釋
- 對于某幾個(gè)功能類似的代碼項(xiàng)(比如類、函數(shù)、變量)等,如果希望一起添加注釋,而又不想提升到模塊的概念,可以通過下面的方式:
- 組內(nèi)的代碼;
- 在一頁內(nèi)分組顯示。其中組名組名的命名符合c++命名規(guī)范。
?模塊注釋
- 進(jìn)行設(shè)計(jì)時(shí),通常有模塊的概念,一個(gè)模塊可能有多個(gè)類或者函數(shù)組成,完成某個(gè)特定功能的代碼的集合。生成的模塊的注釋會單獨(dú)放在一個(gè)模塊的頁面中。使用下面的格式定義一個(gè)模塊:
代碼;
/** @} */ // 模塊結(jié)尾- 其中模塊名Module-Name的命名符合c++命名規(guī)范。
- 任何其他代碼項(xiàng)(比如類、函數(shù)、甚至文件)如果要加入到某個(gè)模塊,使用ingroup命令即可。模塊之間使用ingroup命令,可以組成樹狀關(guān)系。例如要把文件util.cpp加入到模塊module_A中,格式如下:
- 同樣,對于類和命名空間都可以加入到某模塊中,所不同的是把@file util.cpp換成對應(yīng)的@class class-name和@namespace namespace-name。
- 把多個(gè)代碼項(xiàng)一起添加到某個(gè)模塊中可以使用addtogroup命令,格式和defgroup類似,如下:
?
?
?
總結(jié)
- 上一篇: 牛客网C++面经 类和数据抽象
- 下一篇: 2019年哪家银行的信用卡最好?这四家银