这是一个 C++ 文件testClassX.cpp
:
namespace abc {
namespace def {
class testClassX::innerClassX {
/*! \brief blah blah
* \details prints stuff out
*/
/*!
* \brief just prints stuff
*/
void printIt() {
printStuff();
}
/*!
* \brief just says yes
*/
bool getYes() {
return true;
}
}
testClassX::testClassX() {
innerClassX_ = new innerClassX;
}
/*! \copydoc testClassX::InnerClassX::printIt() */
void testClassX::printIt() {
innerClassX_->printIt();
}
/*! \copydoc testClassX::InnerClassX::getYes() */
bool testClassX::getYes() {
return innerClassX_->getYes();
}
} // namespace def
} // namespace abc
当通过 doxygen 运行时,上述文件产生:
Warning: target testClassX::innerClassX::getYes() of \copydoc command not found
但是,没有警告消息printIt()
。这是因为它不返回任何参数吗?
上面的例子有什么问题?我怎样才能摆脱那些\copydoc
相关的警告?
编辑:我发现了这个问题的解决方案。我将以下属性设置Doxyfile
为 YES 并且 Doxygen 找到了内部类:
EXTRACT_ALL = YES
EXTRACT_PRIVATE = YES
EXTRACT_STATIC = YES (I think this one was not necessary, but I needed it for another unrelated reason.)