2013-01-24 54 views
3

例如,記錄局部變量如何使用Doxygen的在我的函數中的C++函數

//starting code with doxygen documentation 
/** The main function. I will now try to document variables within this main function*/ 
int main() 
{ 
int arr[]; /** \brief an integer array*/ 
..... 
return 0; 
} 
//end of code 

然而,當我使用的Doxygen與「HIDE_IN_BODY_DOCS」變量設置爲配置文件中的「NO」,這不執行此局部變量的特定文檔。相反,它只是需要那一點,並將其與功能文檔一起打印出來,就像它是功能中的任何其他註釋行一樣

如何使用Doxygen記錄這些局部變量?

+0

根據你的說法,正確的*方法是記錄這樣一個變量?您看到的行爲顯然是[記錄](http://www.stack.nl/~dimitri/doxygen/manual/config.html#cfg_hide_in_body_docs)。 – Praetorian

+4

我希望不是。文檔是關於接口的。使用註釋實現細節。 –

回答

4

我不知道這樣做的方式(我懷疑存在一種方法)。請記住,doxygen是用來記錄類和函數頭,即界面。將文檔看作其他程序員學習的內容,以便正確使用您的類和函數。你不應該使用doxygen來記錄你的實現。然而,當你在C(++)中編程時,在源文件中記錄局部變量應該不成問題。只要給它一個合適的名字或「來源」的文件是:

Cat cats[]; // holds a bunch of cats

在定義所有的變量必須在你的函數的開頭(德爾福,帕斯卡)聲明的語言,通過所要求的系統儘管如此,你仍然有意義。

1

雖然你可以把評論的函數體,讓他們顯示爲函數文檔的一部分,像這樣

/** @file */ 

/** The main function. I will now try to document 
* variables within this main function. 
*/ 
int main() 
{ 
    /** an integer array. */ 
    int arr[]; 

    /** An endless loop */ 
    for (;;) {} 

    return 0; 
} 

這通常不推薦,因爲別人已經指出。如果你想(作爲開發人員)與文件一起讀到的資料,你可以更好地在體內

/** @file */ 

/** The main function. I will now try to document 
* variables within this main function. 
*/ 
int main() 
{ 
    /* an integer array. */ 
    int arr[]; 

    /* An endless loop */ 
    for (;;) {} 

    return 0; 
} 

正常使用C註釋與設置INLINE_SOURCESYES一起。