2

これがC++で何を意味するのか誰かに伝えることができますか?(関数の前にあります)また、この問題について何かを見つける方法もあります。

__attribute__ ((noinline)) 

ありがとうございました 。よろしく

4

2 に答える 2

3

GCCは、関数の特別な機能を示すために使用されるいくつかの異なる非標準の関数属性を定義します。これらは通常、最適化またはプラットフォーム固有の機能の処理に使用されます。

この場合、noinlineオプティマイザーがインライン化する可能性がある場合、属性は「どのような状況でもこの関数をインライン化しない」ことを意味します。

于 2013-01-05T18:11:31.200 に答える
1

この属性の名前が意味するものとほぼ同じです。一種の重い最適化として、コンパイラーは、関数呼び出しのオーバーヘッドを回避するために、より小さな関数をインライン化することを選択する場合があります。何らかの理由で関数をインライン化したくない場合は、この非標準属性を使用して、コンパイラーがこの最適化を実行しないようにすることができます。

関数の前にあります

GCC属性が構文的にどのように編成されているかについては、このガイドを参照してください。

于 2013-01-05T18:11:47.713 に答える