如何使用Doxygen在C ++中记录宏函数,并在我的非Evil代码文档中引用它?
更具体地说,我在Message.H中定义了一个名为“Message”的常规类,用户可以继承它来定义自己的消息。在另一个文件(“MessageHelpers.H”)中,我有一个像这样的疯狂宏:
//! Users must call this macro to register their messages...
/*!
...lest they be forced to type all sorts of boring and
error-prone boiler plate code.
blah blah blah... More specific documentation and explanation...
*/
#define REGISTER_MESSAGE_TYPE(MSGTYPE) \
do_some(MSGTYPE); \
seriously(); \
crazy_stuff(MSGTYPE);
在Message的文档中,如果短语“REGISTER_MESSAGE_TYPE”可以自动成为链接并指向我的宏文档,我会很高兴。 E.g。
//! A cool message class
/*!
Users can inherit from this class to create their own cool messages.
Just be sure to call REGISTER_MESSAGE_TYPE after your class definition!
*/
class Message
{
virtual void doSomeStuff();
};
这可能吗?
答案 0 :(得分:14)
请参阅http://www.doxygen.nl/manual/index.html
section "Special Commands"列出了\def
command,section "Automatic link generation"描述了您想要链接到宏的内容。
使用\def
记录与文档分开的宏。
使用#MACRO(params)
自动链接到所述宏定义。