多文件和面向对象编程
Multiple files and Object Oriented Programming
在我的应用程序中,我使用多个文件,每个文件包含一个类,在一个文件中收集所有c++文件(所有类的实现)并在另一个文件中收集所有头文件是一个好主意吗?或者这不是很好,因为某些原因,但代码组织?
将声明和定义组织成独立但相关的翻译单元可以帮助减少编译时间。
也不要忽视保持事物有序对人类的价值!软件可以由成千上万个不同的对象、功能和其他部分组成。让它尽可能简单(但不要更简单)!
如果您将类的声明和定义保存在相应的文件中,则只需在更改这些类时重新编译它们。此外,一个类中的更改只需要将更改的类与依赖它的类进行重链接。因此,它减少了编译时间。
它也使调试更容易,因为编译错误可以追溯到一个文件。
就我所知
在c++中,这真的不那么重要。在某些语言中,如Java,编译器要求每个类都在一个单独的文件中,但只要确保不同的文件相互引用,就没有任何理由这样做。
完全同意其他人的答案,我想补充我的观点:
分割成几个文件也使使用编辑器时更容易。然后可以使用几个选项卡。(想象一下,如果你的浏览器只在一个窗口中一个接一个地显示你所有的页面!)
如果实现很大,甚至可以将一个类的实现分解到几个文件中。
另一方面,有时有理由将几个类放在一个文件中,例如当这些类很小且/或非常相关时。例如一个FooObject和它的FooAllocator,或者一个FooObject和它的小FooSubObject只被他使用。
相关文章:
- 分段错误(内核转储) C++面向对象编程
- 面向对象编程 - 位域私有结构的公共参考
- 面向对象编程和对象组合,如何放置组合属性?
- 面向对象编程错误
- 我如何向只用Fortran 77编码的人解释面向对象编程?
- 面向对象编程:在GUI中启动ab对象
- 指针和面向对象编程
- 如何为我的蛋捕手游戏创建落蛋?面向对象编程c++的新手
- 凯撒密码面向对象编程
- Haskell中的面向对象编程
- 使用 IGRAPH 面向对象编程
- 单元测试 非面向对象编程
- C++ 面向对象编程
- 面向对象编程风格
- 如何在C++中启动面向对象编程
- 在学习C#之前,必须先学习OOP(C++上的面向对象编程)
- 异常处理需要面向对象编程吗?
- 多文件和面向对象编程
- VBA面向对象编程
- C++头文件中的面向对象编程