考虑以下示例(在同一翻译单元中):
inline void f();
void f() {}
重新声明时会发生什么f
?f
还算inline
不算?
我查看了这种情况的标准,但我只在 10.1.6/6 [dcl.inline] 中找到了它的反面:
[...] 如果函数或变量的定义在其第一次声明为内联之前出现在翻译单元中,则该程序格式错误。[...]
我想要标准中的一些参考资料,说明在这种情况下会发生什么。
我看到了这篇文章,但它没有在标准中显示明确的参考。我倾向于相信没有这样的参考。