在为当地一所大学的几名学生辅导之后,我被问到“与普通的.cpp文件相比,何时最好使用C ++中的头文件?”。我有点挣扎在答案中,并且看看是否有更明确的答案,说明哪种情况下最好的。
使用可在多个项目中使用的代码时,最好使用头文件吗?我知道这是一个愚蠢的例子,但如果你做了自定义数学函数,可以在其他项目中反复使用;哪个最好放在头文件中?
答案 0 :(得分:10)
任何需要从多个.cpp
文件访问的内容都应该在头文件中声明,并且头文件应该#included
到每个相关的.cpp
文件中。
例如,这可以包括全局变量,全局函数,类等的声明。
答案 1 :(得分:1)
头文件可以更好地重用已开发的代码(即函数或类)。事实上,标准做法是始终为您定义的每个类定义.h和cpp文件。 你的第二个问题的答案是肯定的,如果你想在你的项目中重用自定义函数,你可以在.h文件中定义它的签名,并在.cpp文件或已编译的dll / lib中实际实现
答案 2 :(得分:1)
如果函数,类或宏或其他东西需要可重用(可以从不同文件的数量访问),那么一个好的方法是将它放在头文件中并让其他文件包括在内那个文件。
答案 3 :(得分:0)
标题定义了界面;源文件提供了 实现。除了简单的测试程序,你 一般从头开始 - 只写执行 一旦标题完成。在实践中,您可以回来修改 报头;例如将私有成员添加到类中。但目标是 在尝试实现之前正确定义您需要实现的内容 它,这是标题的作用。
另一个常见的政策是将低级文档放入 标题也是。在这种情况下,在编写标题时,您将从头开始 写一个关于班级将要做什么的描述 - 它的作用和它的作用 在编写任何实际的C ++之前,特别是责任 代码。
答案 4 :(得分:0)
在C ++中,头文件用于声明,在大多数情况下,源文件用于定义。
在需要在多个文件中使用类的情况下,需要为每个文件提供类声明,在这种情况下最好使用头文件,否则如果使用源文件,最终会有多个定义最重要的是,可执行文件的大小将增加。
通常,最好为每个类使用头文件,或者有时使用一组相关的类。