"内联"课程的处罚

kir*_*rbo 8 c++ class visual-studio

Visual Studio允许您创建"内联"类(如果我没有错误的名称).所以类头和实现都在一个文件中.

H.文件包含类和函数的定义和声明,根本没有.cpp文件.

所以我想知道这样做是否有任何惩罚?有什么缺点?

非常感谢

sbi*_*sbi 8

这样做的任何惩罚?有什么缺点?

是.如果您需要更改类的实现,因为这是在头文件中,该类的所有用户都需要重新编译,即使他们只应该关注接口.对于某些项目,这可能非常昂贵.


Mar*_*ork 0

没有惩罚。
但这也不意味着代码实际上是内联的。

它们的 inline 关键字只是一个编译器提示,通常会被忽略,因为编译器在知道何时内联代码方面通常比开发人员聪明得多。