インライン関数の配置
質問: インライン関数をヘッダーで定義する必要があるように見えるのはなぜですかfile?
説明:
クラス関数のインライン定義は、ヘッダー ファイルに必ず存在する必要はありません。ただし、One Definition Rule (ODR) では、インライン関数を使用するすべての翻訳単位で同じ定義を持つことが義務付けられています。
ODR に準拠するには、ヘッダー ファイルに定義を含めることが最も簡単です。すべての翻訳単位で利用可能です。
関数定義を単一のソース ファイルに制限する必要がある場合は、インラインでの宣言を避けてください。これにより、コンパイラは必要に応じて関数をインライン化できます。
関数をインラインで宣言するかどうかは、主に ODR に準拠するかどうかによって決まります。キーワード制限を追加してインラインを強制するのは最適ではない可能性があります。
以上がインライン関数がヘッダー ファイルに存在するように見えるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。