2017-10-20 82 views
0

Doxygen的正常工作與下面的簡單的例子:的Doxygen將無法解決引用命名空間中的typedef

/** \file */ 

/// This is an integer 
typedef int myInteger; 

/// This is the same as \ref myInteger 
typedef myInteger myOtherInteger; 

enter image description here

但它不會解決參考myInteger如果我把它變成一個命名空間。

/** \file */ 

namespace bar { 

/// This is an integer 
typedef int myInteger; 

/// This is the same as \ref myInteger 
typedef myInteger myOtherInteger; 

} 

enter image description here

注意兩個都不選提到的myInteger是鏈接現在。它也抱怨:

警告:無法爲\裁判命令

\ref bar::myInteger不能幫助解決參考`myInteger」。

我該如何解決這個問題?

我有doxygen 1.8.13。

+0

它似乎與[此錯誤](https://bugzilla.gnome.org/show_bug.cgi?id=600829)有關,但在1.7.0中標記爲已修復... – Szabolcs

+0

當記錄命名空間欄,它也可以在將EXTRACT_ALL設置爲YES時起作用我在\ ref – albert

+0

@albert之後看到myInteger我不想要'EXTRACT_ALL',但記錄命名空間確實有效。如果您將其作爲答案發布,我會接受它。但是,它也爲該命名空間創建了一個全新的部分和頁面,我希望避免這一點(無論如何,所有東西都在同一個命名空間中)。你知道這是否可以做到? – Szabolcs

回答

1

要查看的文檔正確有一些可能:

  • 文檔的命名空間
  • 組EXTRACT_ALL爲YES

負的方面是,命名空間被示出爲在文檔中額外的標籤。

  • doxygen的-l [layoutFileName.xml]
  • 修改生成的文件(約命名空間組份對可見光=「否」)
  • 參考文件中的Doxyfile:這可以通過修改所使用的佈局文件來克服
相關問題