這肯定是一個noob問題,但我無法在Doxygen文檔中找到答案。我不知道是否使用:使用文件或類來記錄doxygen中的類?
@file
或
@class
記錄我的頭文件時。
原因是,如果我放入文件,則所有註釋僅出現在「文件」選項卡中,但不出現在「類」選項卡中(每個)。
對於cpp沒關係,我只是使用文件而且它很好,但是如果我在頭文件中使用了文件和類(在類聲明開始之前的開始和類中的文件),那麼我會得到重複條目在生成的文檔中的類...
我在做什麼錯了?有什麼建議麼?想法?
問候, 亞歷
編輯:我現在遇到了新的問題。爲了避免循環依賴條件,我宣佈我的課兩次在頭文件(可能這是不是爲了避免循環依賴的最好的方式,但它正常工作對我來說),例如:
#ifndef EU_SOFIA_KPI_COMMON_ABSTRACTTHREAD_DECL
#define EU_SOFIA_KPI_COMMON_ABSTRACTTHREAD_DECL
namespace eu_sofia_kpi_common
{
class KPI_CPP_API AbstractThread;
}
#define EU_SOFIA_KPI_COMMON_ABSTRACTTHREAD_DECL_END
#endif EU_SOFIA_KPI_COMMON_ABSTRACTTHREAD_DECL
#ifdef EU_SOFIA_KPI_COMMON_ABSTRACTTHREAD_DECL_END
#ifndef EU_SOFIA_KPI_COMMON_ABSTRACTTHREAD_DEF
#define EU_SOFIA_KPI_COMMON_ABSTRACTTHREAD_DEF
namespace eu_sofia_kpi_common
{
class KPI_CPP_API AbstractThread
{
public:
AbstractThread();
virtual ~AbstractThread();
///start method, derived classes must implement this method to initialize their boost::shared_ptr<boost::thread> pointer member object
virtual int start() = 0;
//stop method
virtual void stop() = 0;
protected:
///Pointer to a boost thread to be inherited and that children classes must use in the implementation of the start and stop methods
boost::shared_ptr<boost::thread> m_thread;
};
}
#endif EU_SOFIA_KPI_COMMON_ABSTRACTTHREAD_DEF
#endif EU_SOFIA_KPI_COMMON_ABSTRACTTHREAD_DECL_END
正如你所看到的,在我的「真實」聲明之前,我有一個前瞻性聲明。現在,如果我使用@class,Doxygen會抱怨與此類相關的不一致問題,儘管它會生成該類的文檔。我的猜測是,任何被#ifdef或#ifndef Doxygen包圍的東西似乎都不太喜歡它......
你在記錄_class_嗎?如果是這樣,你應該使用`@ class` doxytag。你在記錄_file_嗎?如果是這樣,你應該使用`@ file` doxytag。 – 2011-02-09 15:28:50
我的類定義是在一個頭文件中,這是一個文件...然後該怎麼做? – AlejandroVK 2011-02-09 15:33:54