声明函数然后在C/C++中定义内联合法?

前端之家收集整理的这篇文章主要介绍了声明函数然后在C/C++中定义内联合法?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
C和/或C中的以下是否合法?
void fn();

inline void fn()
{
  /*Do something here*/
}

我担心的是,第一个声明看起来意味着函数将被定义为非内联,但是以下定义毕竟将它转换为内联.

如果在这种情况下C和C之间存在差异,那么知道这种差异也会很好.

解决方法

是.事实上,它可能更可取.资料来源: http://www.parashift.com/c++-faq/inline-nonmember-fns.html

经验法则:声明告诉您如何调用函数并使用其返回值.定义说明你打电话时会发生什么.您可以将函数更改为内联和后退,而无需修改调用方式,因此它是定义的一部分. (当然,什么是有道理的,什么是真的并不总是匹配,所以这只是一个规则.)

猜你在找的C&C++相关文章