在某些特定情况下使内联函数可以降低应用程序的整体性能吗?
答案 0 :(得分:5)
内联(特别是大型函数)可能会增加代码大小,从而影响缓存性能并降低整体性能。
答案 1 :(得分:1)
内联适用于支持它的每种语言。
值得内联的函数通常很简单,内联长而复杂的函数是没有用的,但是内联函数或执行某些算术计算的函数在内联时会获得很大的性能提升。
在C和C ++等语言中,编译器在指定内联关键字时为您的方法选择最佳内联策略,标记为内联的函数“建议用于内联”,但编译器选择是否为内联实际内容或不。 但是,只有当函数值得为实数内联时才应该使用内联关键字。
某些C和C ++编译器支持特殊关键字,如__forceinline或一些其他特殊属性,这些属性对编译器说“非常推荐用于内联”,并且应谨慎使用这些关键字,因为内联大而复杂的函数会降低性能