2017-10-14 79 views
0

我想限制我的源文件中的行長度爲80個字符。將Doxygen函數鏈接到具有長原型的函數時,這是一個問題。因爲參數的長類型名稱。Doxygen是否具有續行功能?

在生成文檔時,Doxygen是否可以忽略註釋中的換行符(即換行符)?

這裏是一個MWE:

我有以下文件命名爲mwe.cpp

/** 
* \file mwe.cpp 
* 
* \details 
* MWE::MWE(int a, int b, int c) 
* MWE::MWE(int a, 
*   int b, int c) 
*/ 


class MWE 
{ 
    public: 
     /** 
     * \brief constructor with one parameter 
     */ 
     MWE(int a); 

     /** 
     * \brief constructor with three parameters 
     **/ 
     MWE(int a, int b, int c); 
} 

在生成的文檔,第一個鏈接(MWE::func(int a, int b, int c))正確地指向構造服用三個整數參數。但是,第二個鏈接有一個換行符,它指向的構造函數只有一個整數參數(參數列表也不成爲鏈接的一部分,而只是函數名)。

有沒有辦法讓Doxygen忽略換行符?

+0

您使用的是哪個版本的doxygen ae? – albert

+0

\ detail應該讀取文件中的\ details,除非您將\ detail定義爲ALIAS,但在這種情況下,請在您的問題中提及此問題,或者更好地調整您的問題,以便使用標準doxygen命令。 – albert

+0

@albert我正在使用Doxygen版本1.8.13。 – AcId

回答

2

感謝albert的comment,我開始搜索Doxygen的錯誤報告,發現this相關的錯誤報告。

顯然訣竅在於在HTML註釋中放置換行符。

從MWE將所得的代碼是:

/** 
* \file mwe.cpp 
* 
* \details 
* MWE::MWE(int a, int b, int c) 
* MWE::MWE(int a, <!-- 
* -->   int b, int c) 
*/ 


class MWE 
{ 
    public: 
     /** 
     * \brief constructor with one parameter 
     */ 
     MWE(int a); 

     /** 
     * \brief constructor with three parameters 
     **/ 
     MWE(int a, int b, int c); 
} 

不完全行繼續功能,但它解決了問題。現在這兩個鏈接都是相同的,並且正確地指向帶三個整數參數的構造函數。

+0

請將您的示例添加到錯誤報告中,因爲它在問題上有點不同。 – albert

+0

@albert我看到你已經將這個例子添加到了bug報告中。謝謝,非常感謝:) – AcId