我到底应该在 C++ 的头文件中声明什么?

What exactly should I declare in a header file in C++?

我几乎搜索了所有可能的网站,但没有人能够回答我的问题。基本上我问的是,我到底应该在头文件中放置什么?我知道函数声明,但是 .h 文件中的变量声明也是一回事吗?我需要知道使用头文件的“传统”或“常用方法”是什么。

编辑: 如果这有帮助,我最近才开始学习 C++,我 objective 学习这门语言是进入这个行业的机会,主要是 gamedev,并且我需要知道做事的正确方法是什么。因此问题。

头文件通常包含您希望在翻译单元之间共享的实体声明。

这通常意味着class定义类型别名函数声明.

一个翻译单元,粗略地说,就是“一个.cpp文件”。

因此,如果您在 a.cpp 中使用一个函数,并且还在 b.cpp 中使用它,则它的声明需要在两个翻译单元中都可用,并且最好的方法是也就是在头文件中写一次,然后在两个.cpp文件中包含头文件。

就是这样。

虽然可以在头文件中声明变量,但很少这样做。对于初学者,您希望在其上放置 extern 以使其成为 而不是 定义(您不需要多个定义!)。到那时,您必须问自己为什么不使用 class.