内联函数,内部类,C ++

时间:2018-09-06 10:26:56

标签: c++

我已经多次阅读,默认情况下,内联在类中定义的所有成员函数。这是否意味着编译器将在合适的情况下始终将函数的主体代码放在堆栈上(即该代码不包含任何循环或函数调用)?

1 个答案:

答案 0 :(得分:7)

  

默认情况下,内联在类中定义的所有成员函数。

否,它们默认为inline

这意味着可以并且必须在使用功能的每个翻译单元中提供定义。对于成员函数,这意味着使用类的实例。

inline对调用的机器代码内联也有提示作用。每次调用时,编译器可以根据自己的判断遵循或忽略该提示。