1

私がオフィスで取り組んでいるプロジェクトで、リリースビルド(-Osを使用)をコンパイルすると、インライン化に失敗したという警告がg++から何百も表示されます。これらの警告のほとんどはブーストから発生しているようですが、一部は独自のライブラリヘッダー(リンク先のバイナリ.dylibs)から発生しています。これらの警告は一般的に安全に無視できますか、それとも私が心配すべきことですか?

注:MacOSXではg++4.0を使用しています

4

2 に答える 2

3

g ++は、本質的に、厳密にはパフォーマンスの問題について警告していますinline。インライン化できない実装を要求しています。の使用がinline実際に重要でない場合は、それを削除する必要があります(コンパイラーは、そのヒントなしで関数をインライン化できます!-)が、コードの正確性に関しては、警告を無視できます。inline本当に重要なことを使用する場合、つまり、パフォーマンスにとって重要である場合(ばかげた時期尚早の最適化ではなく)、警告は、コードをやり直して達成できるようにするように指示しています(最悪の場合、マクロに移動することによって- -ため息をつきますが、あなたがしなければならないとき、あなたはしなければなりません!-)。

于 2009-09-05T03:48:55.857 に答える