0

ヘッダーファイルからオブジェクトファイル(.o)を作成することはできますか?(.h / .hpp)。すべてのコードはヘッダーにインライン化されます...

4

2 に答える 2

6

はい、コンパイラにC ++ファイルとしてコンパイルし、結果を.oまたは.objファイルに書き込むように指示するだけです。ただし、すべての関数がインラインの場合、コードは何も実行しないため、結果のオブジェクトファイルにはコードが含まれません。したがって、通常、これを行う意味はありません。

于 2012-09-30T18:27:08.803 に答える
1

いいえ。ただし、最近のGCC(LinuxのGCC 4.7など)には、プリコンパイル済みヘッダー機能を使用して1つのヘッダーファイルをコンパイルする機能があります。警告、これは、アプリケーションのすべてのソースファイルに含まれている単一のヘッダーファイル(多くの場合、システムまたはサードパーティのライブラリヘッダーを含む)がある場合にのみうまく機能します。

なぜそうなのかを詳しく説明しているこの返信も参照してください。

また、リンク時間の最適化に興味があるかもしれません。たとえば、コンパイル時とリンク時の両方で-fltoを渡すことによってg++

于 2012-09-30T18:26:47.757 に答える