void fn(); inline void fn() { /*Do something here*/ }
我担心的是,第一个声明看起来意味着函数将被定义为非内联,但是以下定义毕竟将它转换为内联.
如果在这种情况下C和C之间存在差异,那么知道这种差异也会很好.
经验法则:声明告诉您如何调用函数并使用其返回值.定义说明你打电话时会发生什么.您可以将函数更改为内联和后退,而无需修改调用方式,因此它是定义的一部分. (当然,什么是有道理的,什么是真的并不总是匹配,所以这只是一个规则.)