【发布时间】:2011-10-06 08:29:28
【问题描述】:
我想知道是否有人知道 C++ 编译器通常用于决定是否在编译时内联函数的逻辑(假设已请求内联)。
这种事情是公开的吗?
【问题讨论】:
-
如果您有特定的编译器,可能值得一提,因为您可以使用一些标志来影响编译器的决策。
-
您是否请求内联并不是更重要的因素之一。
-
@AlanStokes:确实,C++ 中的
inline关键字主要用于将链接更改为weak,以避免在定义简单时在链接时出现重复符号错误标题中的功能。当然,这些函数也可能会被内联,但问题是(令人惊讶的)正交的。