Doxygenを使用してC++でマクロ関数を文書化し、非悪コードの文書でそれを参照するにはどうすればよいですか?
具体的には、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);
メッセージのドキュメントで、「REGISTER_MESSAGE_TYPE」というフレーズが自動的にリンクになり、マクロのドキュメントを指すことができれば、私はそれが大好きです。例えば。
//! 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();
};
これは可能ですか?
http://www.doxygen.nl/manual/index.html を参照してください
セクション「特別なコマンド」 は _\def
_コマンド をリストし、 セクション「自動リンク生成」 はリンクしたいものを説明しますマクロに。
_\def
_を使用して、宣言とは別のマクロを文書化します。#MACRO(params)
を使用して、上記のマクロ定義に自動リンクします。