C++类中的标头和代码

Header and Code in C++ classes

本文关键字:代码 C++      更新时间:2023-10-16

我刚刚开始学习一些C++教程,我遇到了一些我似乎无法理解的东西。

C++似乎人们正在使用代码文件和头文件,对我来说,这似乎不方便。为什么我想在两个文件之间切换只是为了编写一个简单的 getter 方法。

它被认为是在C++中使用标头的"正确"方式吗?还是只是我拿起的教程使用它?

我得到了拆分代码以使其看起来更干净的想法,但除此之外还有其他好处吗?

提前谢谢。

使用 hpp(header)- 和 cpp(code)-文件有一些原因。其中之一是:库(dll-或so-file)不能像java中的jar文件那样"使用"。如果你写一个库,你必须提供类的声明,methos,...以 HPP 文件的形式。

考虑使用您在其他文件中编写的类。如果将类定义放在单独的文件中,则可以通过将头文件包含在计划使用此代码的位置来帮助编译器确定如何使用该类。

编译器

只需要知道你是否正确使用了类(它不关心如何运行它,直到链接),因此你需要给编译器的只是类(头文件)的声明,进行错误检查。当你说"include"时,预处理器只是将头文件内容复制并粘贴到新文件中,以便新文件现在知道如何使用你编写的类。

C ++中的头文件

存储了很多信息,如果在你制作的每个程序中都使用C ++中的每个"头"文件制作了C ++,那么当你从iostream编写一个函数时,程序将遍历每一个头文件只是为了找到正确的头文件。 所以他们用 C++ 制作了 #inlcude 函数, 因此,您可以指定函数的来源。

当你创建一个程序时,你可以制作自己的头文件,所以代码设置得更好。 然后,您不必在一个主源文件中编写大量代码行,而是可以导入其他代码。 就像你正在制作一个游戏,一个动物的头文件,在该头文件中你有一个猫类, 还有一个给狗的。拥有更干净的代码。

在 C/C++ 中,标头用于在类之间共享类结构(以及其他内容)。

所以可以使用

包括"classFOO.h"

在classBAR.h(或classBAR.cpp)中使用classFOO。