2012-12-07 76 views
0

在一个程序中使用多个文件,特别是较大的程序为用户节省了很多麻烦甚至更多的滚动,但是对于我希望在我的应用程序中表示的每个类或对象,都需要单独的.cpp和.h文件吗?将类分组为几个逻辑相关的类的模块,它们共享.cpp和.h文件会更好吗?当使用多个文件在C++中编写程序时,每个类都需要它自己的吗?

谢谢。

+3

每个班级使用一个.h&.cpp。如果您想将多个类组合到一个“模块”中,请使用名称空间。 – Borgleader

+0

我同意Borgleader,这是唯一的负面影响,但是如果你最终得到大量的类和实现文件,那么编译/链接时间将会增加很多,然后在更少的文件中进行组合。 – goji

+0

如果您愿意,您可以在文件中包含多个类。 @Borgleader描述的是好的做法,但不是语言要求。 – Barmar

回答

4

不,不需要每个类都有单独的.cpp和.h文件,虽然这是组织技术的常用做法。如果您(或尝试使用您的代码的人员)未使用功能丰富的IDE(例如,一个文本编辑器。如果你不能从它的名字中识别一个文件的内容,那么你将很难在一个大型项目中查找类。即使使用像Visual Studio这样的IDE,我也喜欢每个文件都有一个类的便利,因为我可以在不需要使用类浏览器或其他工具的情况下浏览我的类。

您给出了将多个类混合成一个源文件和一个头文件的示例,但是您没有提及的另一种替代方法是可以将所有内容放在头文件中,这可能很有用,例如仅用于创建标题库(这意味着用户只需要担心包含头文件)或模板。

相关问题