在我的应用程序中,我使用多个文件,每个文件包含一个类,在一个文件中收集所有C ++文件(所有类的实现)并将所有头文件收集到另一个文件中是个好主意,或者这不好出于某种原因,但代码组织?
答案 0 :(得分:3)
将声明和定义组织成单独但相关的翻译单元可以帮助减少编译时间。
并且不要忽视为人类保持组织的价值!软件可以包含数千个不同的对象,功能和其他部分。保持尽可能简单(但不简单)!
答案 1 :(得分:1)
如果在相应的文件中保留类的声明和定义,则只需在对这些类进行更改时重新编译它们。同样,一个类中的更改只需要将更改的类重新链接到依赖于它的类。因此它减少了编译时间。
它使调试更加容易,因为编译错误可以追溯到一个文件。
据我所知,将所有文件连接在一起是没有优势的
答案 2 :(得分:0)
在C ++中它确实无关紧要。在某些语言中,例如Java,编译器要求每个类都在一个单独的文件中,但只要您确保不同的文件相互引用,就没有任何理由。
答案 3 :(得分:0)
完全同意其他答案,我想补充一下:
使用编辑器时,分成几个文件也会更容易。然后,您可以使用多个选项卡。 (想象一下,如果您的浏览器仅在一个窗口中一个接一个地显示所有页面!)
如果实现很大,甚至可以在多个文件中断开类实现。
另一方面,有时候有理由将几个类放在一个文件中,例如当这些类很小和/或非常高度相关时。例如, FooObject 及其 FooAllocator ,或 FooObject 及其仅由他使用的小型 FooSubObject 。