1

我有一个代码,其中定义了 .cpp 文件中未在 .h 文件中声明的成员函数。与我的预期相反,它编译没有任何问题。

我想用 Doxygen 生成一些文档,但是我在头文件中未声明的成员函数之前添加的注释似乎没有被 Doxygen 识别。

除了在头文件中定义函数之外,这个问题是否有任何解决方法?

4

1 回答 1

0

我有一个代码,其中定义了 .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函数)。

于 2012-08-30T16:31:03.890 回答