C++11 为什么在类内部定义成员函数时仍然有内联说明符? C++ ISO标准:在类定义中定义的函数是内联函数。

C++11 为什么在类内部定义成员函数时仍然有内联说明符? C++ ISO标准:在类定义中定义的函数是内联函数。,c++11,inline,C++11,Inline,但请看下面的代码: 类模板 职业技工{ 公众: /* ... */ 私人: 内联int GetMaxHeight()常量{ 返回最大高度荷载(标准::内存顺序); } }; 在类内部定义GetMaxHeight时,仍然有一个显式内联说明符 所以,我想知道为什么我们在类中定义函数时仍然需要显式内联?您不需要它。这是多余的。就像在覆盖的声明中重复virtual 语法允许它,因为它是一个函数定义,并且没有额外的措辞禁止它。您不需要它。这是多余的。就像在覆盖的声明中重复virtual 语法允许它,因为

但请看下面的代码:

类模板
职业技工{
公众:
/*
...
*/
私人:
内联int GetMaxHeight()常量{
返回最大高度荷载(标准::内存顺序);
}
};
在类内部定义GetMaxHeight时,仍然有一个显式内联说明符


所以,我想知道为什么我们在类中定义函数时仍然需要显式内联?

您不需要它。这是多余的。就像在
覆盖的声明中重复
virtual


语法允许它,因为它是一个函数定义,并且没有额外的措辞禁止它。

您不需要它。这是多余的。就像在
覆盖的声明中重复
virtual

语法允许它,因为它是一个函数定义,并且没有额外的措辞禁止它