物事の関連付け
関連コマンドは、ある文書化された要素が別の文書化された要素とどのように関連するかを指定するためのものです。いくつかの例があります:
- この関数は他の関数のオーバーロードである。
- この関数は他の関数の再実装である。
- このtypedefはあるクラスやヘッダーファイルと関連している。
QMLの型が他のQMLの型を継承していることを示すコマンドもあります。
コマンド
\inherits
\inherits 、あるQML型が他のQML型を継承していることを示すためのコマンドです。継承する要素の \qmltypeのコメントに含まれていなければなりません。引数には継承するQML型の名前を指定し、オプションとしてQMLモジュール名を指定します。
/*!
\qmltype PauseAnimation
\inqmlmodule QtQuick
\nativetype QDeclarativePauseAnimation
\ingroup qml-animation-transition
\since 4.7
\inherits Animation
\brief The PauseAnimation element provides a pause for an animation.
When used in a SequentialAnimation, PauseAnimation is a step
when nothing happens, for a specified duration.
A 500ms animation sequence, with a 100ms pause between two animations:
SequentialAnimation {
NumberAnimation { ... duration: 200 }
PauseAnimation { duration: 100 }
NumberAnimation { ... duration: 200 }
}
\sa {QML Animation and Transitions}, {declarative/animation/basics}{Animation basics example}
*/QDocはこの行をPauseAnimation 要素のリファレンスページに記載します:
QMLの型を.qmlファイルで直接文書化する場合、QDocはQMLの構文から基本型を検出することができるので、\inherits コマンドは通常必要ありません。もし存在する場合、\inherits コマンドはこの自動的な基本型の検出を上書きします。
\overload
C++関数のオーバーロードをマークするには \overloadコマンドを使ってください。このコマンドは、ドキュメンテーション・コメント内の独自の行に記述する必要があります。
どのように動作するか
同じ名前のC++関数(オーバーロード)が複数あり、異なるパラメータで同様の処理を行う場合、ドキュメントが重複しないようにするために \overloadを使用することで、ドキュメントの重複を避けることができます。のない関数は、完全なドキュメントが必要です。 \overloadのない関数は、完全なドキュメントが必要です。を持つ関数は \overloadを持つ関数は、特定の違いに焦点を当てることができます。
でマークされた関数は \overloadの付いた関数は、メイン関数のドキュメントを参照するため、パラメータ不足の警告を自動的に抑制します。
基本的な使い方
/*!
\overload
Brief description of what makes this overload different.
*/主関数へのリンク
主関数へのリンクを作成するには、関数名を追加します:
/*!
\overload functionName()
Brief description of what makes this overload different.
*/修飾名 (ClassName::functionName()) または非修飾名 (functionName()) を使用します。QDocは自動的に、現在のクラスまたは名前空間を使用して非修飾名を修飾します。
注意: 歴史的な理由から、functionName() のようなパラメータなしの非修飾名は、必ずしもパラメータなしのオーバーロードではなく、主要なオーバーロードへのリンクの略記として機能します。QDocは検索アルゴリズムを使って、リンク先として「最適な」オーバーロードを見つけます。特定のパラメータレス関数にリンクするには、\overload primary で主要オーバーロードとして指定するか、空のパラメータリストを明示的に指定する完全修飾シグネチャを使用します。
プライマリ・オーバーロードの指定
デフォルトでは、QDoc はプライマリ・オーバーロードを自動的に選択します。どのオーバーロードがプライマリになるかを明示的に指定するには、次のようにします:
/*!
\overload primary
Main documentation for this function family.
Document all parameters here.
*/プライマリー・オーバーロード
- 主関数のドキュメントを含む。
- 完全なパラメータ・ドキュメントが必要。
- この関数は...をオーバーロードします」というテキストを表示しない。
- 他のオーバーロードのリンクターゲットとなる。
最も重要なオーバーロードがQDocの自動選択と異なる場合や、一貫したリンク動作が必要な場合は、\overload primaryを使用してください。
\reimp
\reimp コマンドは、追加ドキュメントを必要とせずに、関数が仮想関数の再実装であることを示すためのものです。
デフォルトでは、QDocは再実装された仮想関数がドキュメント化されていない限り、クラス参照から省きます。このコマンドは、ドキュメント化されていない関数を確実にクラス参照に含めます。
このコマンドはそれ自身の行に記述する必要があります。
/*!
\reimp
*/
void QToolButton::nextCheckState()
{
Q_D(QToolButton);
if (!d->defaultAction)
QAbstractButton::nextCheckState();
else
d->defaultAction->trigger();
}この関数はドキュメントには含まれません。代わりに、基本関数QAbstractButton::nextCheckState() へのリンクがドキュメントに記載される。
\relates
\relates コマンドは、エンティティ(関数、マクロ、typedef、enum、変数)のドキュメントをクラス、ネームスペース、ヘッダー・ファイルに含めるためのものです。引数は、実体が関連するクラス、ネームスペース、またはヘッダーの名前です。
引数がテンプレート化された型を参照する場合は、型名のみを使用します(テンプレート・パラメータは使用しません)。
/*!
\relates QChar
Reads a char from the stream \a in into char \a chr.
\sa {Format of the QDataStream operators}
*/
QDataStream &operator>>(QDataStream &in, QChar &chr)
{
quint16 u;
in >> u;
chr.unicode() = ushort(u);
return in;
}この関数のドキュメントは、関連する非会員セクションにあるクラスQChar のリファレンス・ページにあります。
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.