Jus*_*cle 5 c c++ gcc inline
在我的项目上启用-Winline会产生大量我不太理解的输出。有谁知道如何使用此输出来找出为什么我的特定函数没有内联?
-Winline
Chr*_*ick 3
嗯,根据我的 gcc 手册页......
编译器使用各种启发式方法来确定是否内联函数。例如,编译器会考虑内联函数的大小以及当前函数中已完成的内联量。因此,源程序中看似微不足道的更改可能会导致 -Winline 产生的警告出现或消失。
我不相信你可以强制编译器内联你的函数;当编译器更新时,它的实现细节甚至可能会发生变化。此外,只要编译器的选择使您的函数运行得更快,您是否有任何特殊原因关心该函数是否实际上是内联的?
当然,如果您确实想出于某种原因内联函数,您可能只需使用宏来执行此操作。
归档时间:
14 年,9 月 前
查看次数:
3239 次
最近记录:
14 年,8 月 前