内联函数是否对性能有任何影响?

时间:2016-10-31 18:15:39

标签: c++ inline

使用现代编译器,声明内联函数对性能有任何影响吗?

也就是说,面对在标题或源文件中定义内联函数的选项,这两者之间有什么区别吗?

在这个问题When to use inline function and when not to use it?中,接受的答案有几个原因。

摘录:

做的:

  • 非常小的函数是inline的理想选择:更快的代码和更小的可执行文件(更多机会留在代码缓存中)
  • 功能很小经常调用

  • 大型函数:导致更大的可执行文件,无论调用开销导致的执行速度更快,都会严重影响性能

建议是从7年前开始的,我读过这些天内联词被忽略了,编译器决定要内联什么。

问题:

  • 上述建议是否仍然相关?
  • 定义函数内联在多大程度上有效(除了防止多个定义链接器问题)?
  • 这些天我有什么理由来内联函数?

0 个答案:

没有答案