在cppreference页面中,关于inline
指定符号,它说道:
当函数的声明指定符序列中使用
inline
指定符时,将声明该函数为内联函数。
内联函数具有以下特性:
在程序中可能有一个以上的内联函数定义,只要每个定义出现在不同的翻译单位中并且所有定义都是相同的。
...
然后,稍微往下看,它说:
inline
关键字的原始意图是作为一种指示优化器函数内联替换优于函数调用的指示符。...
除了这行之外,没有提到inline
的此用法。C++标准是否仍然有效?还是后者被废弃而前者仍然有效?
inline
仍然是有效和必要的。原始意图是次要的。 - πάντα ῥεῖinline
的原始意图已经不重要了。它只是对编译器的建议。编译器可以在有或没有inline
关键字的情况下进行内联。它只影响函数的链接方式。 - Eljay