void f (int);會被正確地剖析為函式宣告,但
const int (a);也會被視為名稱為
int
的函式宣告,因為只會分析語法,而不是語意。如果可以偵測到多餘的大括號,例如在int *(a[20]);的情況下,Doxygen 會移除大括號並正確剖析結果。
並非所有包含在文件中的程式碼片段中的名稱都會被連結取代(例如,當使用 SOURCE_BROWSER = YES
時),而且指向多載成員的連結可能會指向錯誤的成員。對於每個函式產生的「參考來源」清單也是如此。
部分原因是因為目前程式碼剖析器不夠聰明。我會在未來嘗試改進這一點。但即使進行了這些改進,也無法將所有內容正確連結到對應的文件,因為可能存在歧義或缺乏關於程式碼片段所在內容的資訊。
Doxygen 的開發高度仰賴您的意見!
如果您正在嘗試 Doxygen,請告訴我您對它的看法(您是否錯過某些功能?)。即使您決定不使用它,也請告訴我原因。
錯誤會在 GitHub 的 問題追蹤器中追蹤。在提交新錯誤之前,請先搜尋資料庫,看看是否有人已提交相同的錯誤。如果您認為您發現了新的錯誤,請回報它。
如果您不確定某個問題是否為錯誤,請先在 使用者郵件列表或 Stack Overflow 上使用 doxygen
標籤尋求協助(需要訂閱)。
如果您只傳送(模糊的)錯誤描述,通常對我沒有幫助,而且我需要花費更多時間才能弄清楚您的意思。在最壞的情況下,您的錯誤回報甚至可能被我完全忽略,因此請務必在您的錯誤回報中包含以下資訊
doxygen --version
或使用 doxygen --Version
來取得更多資訊)。-s
旗標來縮小設定檔(使用 doxygen -s -u [configName]
從現有的設定檔中移除註解。甚至最好對使用的 [configName]
使用 -x
或 -x_noenv
旗標,以取得使用的設定與 Doxygen 預設設定之間的差異,因此請使用 doxygen -x [configName]
)。doxygen -d
以取得所有旗標。 preprocessor
選項可能會提供您關於 Doxygen 如何理解輸入檔案的提示。您可以(並且鼓勵)為已回報的錯誤新增修補程式。如果您這樣做,請在 提取要求表單中使用「issue #NUMBER TITLE」作為標題,其中「NUMBER」和「TITLE」是指 GitHub 上相關的問題。
如果您對如何修復現有錯誤和限制有想法,請在開發人員郵件列表上討論它們(需要訂閱)。如果您不想透過錯誤追蹤器或郵件列表傳送修補程式,也可以直接傳送至 doxyg.nosp@m.en@g.nosp@m.mail..nosp@m.com。
對於修補程式,請使用「diff -uN」或包含您修改的檔案。如果您傳送多個檔案,請將所有檔案封裝或壓縮,這樣我只需儲存和下載一個檔案即可。