C++テンプレートとテンプレートメタ関数をDoxygenで文書化する方法に関するガイドラインはありますか?例えばdoxygenを使ってC++テンプレートとテンプレートメタ関数を文書化するには?
:テンプレートパラメータを文書化するために使用さ
@tparam
:/// @brief metafunction for generation of a map of message types to /// their associated callbacks. /// @tparam Seq the list of message types template< class Seq > struct generate_callback_map { typedef typename mpl::transform< Seq , build_type_signature_pair<mpl::_1> >::type vector_pair_type; typedef typename fusion::result_of::as_map<vector_pair_type>::type type; };
これまでのところ、私は次の提案を見てきました。
@arg
テンプレートパラメータを文書化する別の方法です。@brief
を使用してメタ機能を記述します。メタ関数のための「が返さタイプは」文書化する必要がありますどのよう
?
誰もがC++テンプレートを使用してDoxygenのを使用するための任意の良い提案や個人的な好みを持っていますか?
@Pubby:これは本当に便利なアドバイスです。あなたは何を使っていますか? –
@JanHudecそれを生成するのではなく自分で書きます。スタイルガイドと一貫した書式設定を使用してください。読み取り可能なコードは、漏洩した抽象であるため、TMPにとって大きなプラスです。 psuedocodeを使って説明すると、C++の構文がうまくいくので助けになります。 – Pubby
@Pubbyは冗談でなければなりません。良いドキュメントは、コードを見ないときです。あなたはヘッダ内の説明コメントを読んでいますが、コードスタイル、書式、読みやすさなどは気にしません。これは良いドキュメントです。 * Doxygen *はソースコード*(理想的にはヘッダー)からこれらの文書を抽出するための単なるツールです*。もちろん、HTMLの代わりに«targzipped»ヘッダーのようなAPIの説明を配布したい場合は/ pdf /何でも、幸い、幸運; * Doxygen *を使うのが好きです。 –