C++ ISO标准说:
"A function defined within a class definition is an inline function."
是否存在IGNORE这个规则的编译器?
(请不要错误内联inlineD - 我的问题是,如果有一个编译器,不会在那里提出内联建议它应该)
你似乎误解了"内联"的含义.这并不意味着函数会自动内联; 根据7.1.2-2,它表明优选内联替代.
因此,您无法判断函数是否在代码中内联标记,因为编译器可以自由决定这种或那种方式.这只是一个编译器提示.
该标准规定所有编译器都可以忽略内联请求,无论是隐式还是显式.它们是否这样做将在很大程度上依赖于函数是否可以实际内联 - 例如递归函数不能.
编辑:只是为了澄清 - 提问者忽略了这一点,从标准的前一段到他引用的:
在调用点执行此内联替换不需要实现