据我所知,在类定义内定义的成员函数是隐式inline
:
class X {
int f() { return 1; } // Implicitly inline.
};
int g() { return 2; } // Not implicitly inline.
我一直在寻找标准报价来支持这一点,但是我只能找到basic.link/7:
[另外,成员函数,静态数据成员,类作用域的命名类或枚举,或在类作用域typedef声明中定义的未命名类或枚举,以使该类或枚举具有用于链接目的的typedef名称( [dcl.typedef])与它所属的类的名称具有相同的链接(如果有)。
我找不到dcl.typedef中与简单类定义相关的任何内容(没有涉及
typedef
。
我在找对地方了吗?如果没有,确切的标准措辞在哪里?
据我所知,在类定义内定义的成员函数是隐式内联的:class X {int f(){return 1; } //隐式内联。 }; int g(){return 2; } //不是隐式的...