1. 程式人生 > >基於doxygen的c++註釋規範模版

基於doxygen的c++註釋規範模版

前言:我們知道,在使用doxygen時,他會自動根據你的註釋生成所有變數、函式、類…的註釋列表,但是如果要讓他顯示的規範化並且美觀,需要你按照規範化的模版進行書寫註釋。所以下面的模版就是教你如何書寫一個規範的註釋(注意,這個模版針對的是c++,像c以及其他的語言會有所不同

///////////////////////////////////////////////////////////////////////////////
///  You should have received a copy of the GNU General Public License         
///  along with OST. If not, see <http://www.gnu.org/licenses/>.               
///                                                                            
///  @file     MyClass.h                                                       
///  @brief    這個類的主要作用是...                                                                              
///  @author   krishna_Lee                                                                                                        
///  @version  1.0.0.1                                                
///  @date     2017.01.25                                                                                
///                                                                          
///////////////////////////////////////////////////////////////////////////////

#ifndef LIBRARY_NAME_COMPONENT_NAME_H_INCLUDED
#define LIBRARY_NAME_COMPONENT_NAME_H_INCLUDED

/** 
    這是MyClass類的說明
*/
class MyClass
{
public:

    /** 簡要說明1 */
    void function1() const noexcept;

    /** 簡要說明2

        詳細說明2
    */
    void function2() const noexcept;

    /** 簡要說明3

        詳細說明3
        詳細說明3...
    */
    void function3() const noexcept;

    /** 簡要說明4

        詳細說明4
        詳細說明4...

        @param arg1     引數1的說明...
        @param arg2     引數2的說明...
    */
    void function4(bool arg1, bool arg2);

    /** 簡要說明5

        詳細說明5
        詳細說明5...

        @param arg1     引數1的說明...
        @param arg2     引數2的說明...
        @return         返回值的說明...
    */
    int function5(int arg1, int arg2);

    /** 簡要說明6

        詳細說明6
        詳細說明6...

        @param arg1     引數1的說明...
        @param arg2     引數2的說明...
        @return         返回值的說明...
        @see function1  參考(連結function1)
        @note           註釋...
        @attention      注意...
        @bug            存在的問題...
        @warning        警告...
    */
    int function6(int arg1, int arg2);

    /** 簡要說明MyEnum...

        詳細說明MyEnum...
    */
    enum MyEnum
    {
      int EVal1,     ///< 後置簡要說明EVal1...
      int EVal2      ///< 後置簡要說明EVal2...
    };
protected:
    int value; ///< 後置簡要說明value...
}

#endif// LIBRARY_NAME_COMPONENT_NAME_H_INCLUDED

效果圖: 在這裡插入圖片描述