簡體   English   中英

在C ++標頭中具有未聲明函數的Doxygen注釋

[英]Doxygen comments with undeclared functions in C++ headers

我有一個代碼,其成員函數在.cpp文件中定義,但未在.h文件中聲明。 與我期望的相反,它可以毫無問題地進行編譯。

我想使用Doxygen生成一些文檔,但是我在頭文件中未聲明的成員函數之前添加的注釋似乎無法被Doxygen識別。

除了在頭文件中定義函數以外,是否有任何解決此問題的方法?

我有一個代碼,其成員函數在.cpp文件中定義,但未在.h文件中聲明。 與我期望的相反,它可以毫無問題地進行編譯。

你是這個意思嗎

// Foo.h
class Foo
{
  void bar ();
  // no method "meh".
};

// Foo.cpp
int Foo::meh (const std::string& message)
{
   // ...
};

因為那不應該編譯。

如果您的意思是:

// Foo.h
void bar ();
// no function "meh".

// Foo.cpp
int meh (const std::string& message)
{
   // ...
}

這樣就完全可以了(自由函數不需要在頭文件中聲明)。


我想使用Doxygen生成一些文檔,但是我在頭文件中未聲明的成員函數之前添加的注釋似乎無法被Doxygen識別。

這取決於您的Doxygen配置。 確保將INPUT_PATTERNS設置設置為同時包含源文件和頭文件。 還要確保獨立的功能命令明確引用某個符號(例如,使用@fn meh命令記錄meh函數)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM