我应该在每个头文件/cpp 文件中#include 我需要的所有内容吗?我正在开发一个 2d 游戏引擎 atm(主要用于练习),在查看我的代码时,我意识到我在几乎每个文件中都重复了字符串和向量。这是一个问题,我该如何处理?
我一直认为,您编写的每个课程或模块都应该有自己的两条腿,可以这么说。我真的很喜欢通用编程(我在引擎中包含了我自己的脚本语言,以及我自己起草的脚本引擎),但我也意识到这可能会导致很多开销和混乱。
我会坚持只在必要时才包括<string>
在内。<vector>
至于确保各个头文件独立存在,我喜欢 Google C++ 样式指南如何处理include order。foo.hpp
基本上,总是在所有其他包含之前列出相应的包含foo.cpp
。这样,我们知道foo.hpp
不会期望在它之前包含某些东西,如果它不存在则失败。
这不是问题。您应该在每个文件中包含绝对最小的依赖项——不多也不少。