2013-03-13 6 views
34

は私が機能するために、次のDoxygenのドキュメントを持っている:pfirstはパラメータであり、そしてそれは前提条件で参照されていることをDoxygenのパラメータを参照する正しい方法は何ですか?

/** 
    @brief Does interesting things 

    @param[in] pfirst The first parameter: a barrel full of monkeys 

    @pre 
    "pfirst" must have been previously passed through BarrelFiller() 
*/ 

注こと。

私はそれを他のテキストと区別したいので、引用符で囲みました。しかし、Doxygenがコマンドを強調表示し、それをパラメータ定義にリンクするのが望ましい方法でこれを行うとよいでしょう。これを行う方法はありますか?

これがデフォルト設定(またはそのわずかな変更)のみを使用して行われるのであれば、特にうれしいでしょう。

答えて

44

Doxygenは、次の単語が関数のパラメータであることを示すために、コマンド\pを提供します。

... the \p x and \p y coordinates are used to ... 

これは、デフォルトではタイプライターフォントを使用して表現されると考えています。私は現在、これが自動リンク機能を提供しているとは考えていませんが、将来的には可能性があります。

メンバー引数をマークアップするために使用される関連コマンド\aがあります。デフォルトでは、テキストで強調表示されます(<em>arg</em>

詳細については、さまざまなDoxygen Special Commands referenceを参照してください。

+4

を私は決してものの(これは約求めているものをOP _exactly_されていないと思います彼自身の質問に関して私は彼よりもよく分かっていると思う)。ほとんどの場合、彼が求めているのは、出力がパラメータとして(例えば、HTML出力で、 'paramname'クラスのメンバである)同様に_renderedされるように、マークアップされるような方法でテキストをマークアップする方法ですデフォルトスタイルシートのパラメータとして使用します。これはDoxygenの出力をスキニングする場合には明らかに重要ですが、現時点では手頃な方法はありません。 – alecov

+0

HTMLクラスを使用して出力にパラメータを識別させたい場合でも、ソースコードのコメントに '\ p'または '\ a'マークアップを使用します。これらはDoxygenにあなたの意図を伝えます。出力でこれらのトークンをどのようにレンダリングするかは、別の問題です - 「」かどうか、またはクラスとして。 Doxygenを作る方法は別の問題です。おそらくXML出力を見てください。 –

+2

Doxygenのドキュメントでこの節に気づいていない人には、ここで着陸する人のために非常に分かりやすいように、コマンドの先頭の '\'を '@'に置き換えて同じ結果を得ることができます。したがって、 '@ p'もここで動作します。 –

2

あなたが参照するパラメータの前に「#」記号を使用します。

#pfirst must have been previously passed through BarrelFiller() 

in the Doxygen manual

+2

'#'はメンバ変数を参照するために使用され、関数パラメータは参照されません。 – xuhdev

+0

間違った答えです。 'pfirst'がパラメータの場合、これは"警告:pfirstへの明示的なリンク要求を解決できませんでした "という警告を生成し、ハッシュは生成されたドキュメントに文字通り書き込まれます。 'pfirst'がメンバ関数または変数である場合、出力は素晴らしいリンクです。 – Stein

関連する問題