头文件中的类实现==样式不正确

Class implementation in a header file == bad style?

本文关键字:样式 不正确 实现 文件      更新时间:2023-10-16

可能重复:
在C++中,为什么有头文件和cpp文件?

我想知道在头文件中编写一个完整的类c++是否可取?并使用include来包含类,这与java进行oop编程的方式类似。这是一种糟糕的风格吗?有人能给我推荐一个"好的"C++oop风格的指南吗?我还想知道当他们谈论一个有c++经验的人时,模板编程是否是他们真正的意思。

在头文件中包含函数定义会产生一些连锁反应,通常会避免。以这种方式定义的函数可能是内联的,这将增加可执行文件的大小,从而影响性能(无论是积极的还是消极的(。此外,这样做会增加构建时间,因为将所有定义都排成一行会增加您必须包含额外文件等的可能性。

通常的做法是将类接口放在头文件(.h(中,并将其实现放在实现文件(.cpp(中。

在某些情况下,要求所有代码都可用——模板就是这样。STL广泛使用模板,必要时将函数的实现包含在头文件中。

将公共类和函数声明放入.h中在.cpp 中放入定义和其他内容

.h是您的接口,.cpp是您的实现。

将声明与实现分离总是更好的风格,尤其是对于更复杂的函数。

模板是更高级的东西。

一个好的底漆是:http://www.cplusplus.com/doc/tutorial/classes/