ほとんどのドキュメンテーションシステムには、ドキュメントの他の部分へのリンクを挿入できる特別な「関連項目」セクションがあります。Doxygenにもそのようなセクションを開始するコマンド (\sa セクションを参照) がありますが、ドキュメント内の任意の場所にこのようなリンクを配置することができます。 ドキュメントの場合、リンクの代わりにページ番号への参照が記述されます。さらに、ドキュメントの最後にある索引を使用すると、メンバー、クラス、名前空間、またはファイルのドキュメントをすばやく見つけることができます。manページの場合、参照情報は生成されません。
次のセクションでは、ソースファイル内の様々なドキュメント化されたエンティティへのリンクを生成する方法について説明します。
Doxygenは、ドキュメント内で見つかったすべてのURLとメールアドレスを自動的にリンク(HTML内)に置き換えます。リンクテキストを手動で指定するには、HTMLの 'a
' タグを使用してください。
<a href="linkURL">link text</a>
これはDoxygenによって他の出力形式に自動的に変換されます。
ドキュメント内の単語で、ドキュメント化されたクラスに対応し、少なくとも1つの非小文字が含まれている場合、そのクラスのドキュメントを含むページへのリンクに自動的に置き換えられます。ドキュメント化されたクラスに対応する単語がリンクに置き換えられるのを防ぎたい場合は、単語の前に % を付けてください。すべて小文字の記号にリンクするには、\ref を使用してください。
単語の最後の文字ではないドット (.
) を含むすべての単語は、ファイル名と見なされます。単語が実際にドキュメント化された入力ファイルの名前である場合、そのファイルのドキュメントへのリンクが自動的に作成されます。
関数へのリンクは、次のパターンのいずれかが検出された場合に作成されます。
<functionName>"("<argument-list>")"
<functionName>"()"
"::"<functionName>
(<className>"::")n<functionName>"("<argument-list>")"
(<className>"::")n<functionName>"("<argument-list>")"<modifiers>
(<className>"::")n<functionName>"()"
(<className>"::")n<functionName>
ここで n>0。
オーバーロードされていないメンバーの場合、引数リストは省略できます。
関数がオーバーロードされており、一致する引数リストが指定されていない場合 (つまり、パターン 2 または 6 が使用されている場合)、オーバーロードされたメンバーのいずれかのドキュメントへのリンクが作成されます。
メンバー関数の場合、クラススコープ (パターン 4 から 7 で使用されている) は、次の場合に省略できます。
これらのエンティティはすべて、前のセクションで説明したのと同じ方法でリンクできます。分かりやすくするために、この場合はパターン 3 と 7 のみを使用することをお勧めします。
クラス、構造体、および共用体を含む typedef は、次のように
typedef struct StructName TypeName
StructName のエイリアスを作成するため、StructName 自体または TypeName が検出されたときに、StructName へのリンクが生成されます。