传统的c ++程序头文件结构?

时间:2011-09-29 03:32:12

标签: c++ file header

我知道头文件如何在c ++中工作的机制,但我只是开始用更多的类编写更大的opengl程序,我想知道是否有一种“标准”或传统的方法来组织头文件周围的大型程序或者大部分只是个人偏好?

2 个答案:

答案 0 :(得分:5)

1. Divide your project into Modules.
2. Make a directory for each module.
3. Under each directory for a module create 2 sub directories inc/ and src/
where you will place your header and source files resp.
4. Create a global directory and place your header and cpp files in that directory which 
would be used commonly by several modules.
5. Make your Makefile that includes path and links to all libraries correctly.

这就是我所遵循的。可能还有其他更有效和效率更低的方法:)

答案 1 :(得分:1)

对于非常大的项目,通常有两种功能/对象:在很多地方使用的功能/对象和仅在本地使用的功能/对象(在一个文件或少数相关文件中)。您希望将它们放在两个不同的位置:

  • 在一个中心位置,比如root \ inc,为这里广泛使用的所有函数和常量添加标题。
  • 在每个目录中,放置仅影响这些区域的头文件。

这样做的好处是它会强制你的程序脱钩。 UI部分中的cpp文件无法访问网络部分中的功能,除非它位于中心位置并且预计会被广泛使用。

如果你说的不是很大但仍然不止一个文件,那么经验法则是你将每个头文件保存到一个类或最多几个高度相关的类。