1. ホーム
  2. c++

[解決済み] ヘッダーオンリーライブラリの利点

2022-05-24 23:52:54

質問

ヘッダのみのライブラリの利点は何ですか、また、なぜ実装を別のファイルに置くのではなく、そのように書くのですか?

どのように解決するのですか?

テンプレートを扱う場合など、ヘッダのみのライブラリが唯一の選択肢となる場合があります。

ヘッダのみのライブラリを持つことは、そのライブラリが使用されるかもしれない様々なプラットフォームについて心配する必要がないことも意味します。実装を分離する場合、通常は実装の詳細を隠すためにそうし、ライブラリをヘッダーとライブラリの組み合わせとして配布します ( lib , dll または .so ファイル)。もちろん、これらはサポートするすべての異なるオペレーティング システム/バージョン用にコンパイルする必要があります。

実装ファイルを配布することもできますが、それはユーザーにとって余分なステップを意味します - ライブラリを使用する前にコンパイルすることです。

もちろん、これは ケースバイケース ベースで適用されます。例えば、ヘッダのみのライブラリは、時に コードサイズ & のコンパイル時間が長くなることがあります。