c++头文件包含冲突
C++ header include conflict
我正在为学校做一个交通模拟程序。我的Simulation
类从XML文件中读取车辆列表,因此我在Simulation
类中包含了Vehicle.h
。我希望我的车辆能够持有一个指向模拟对象的指针,以便它可以使用模拟的searchRoads
函数。所以我把Simulation.h
包含在我的Vehicle
类中。
当我这样做时,当我试图编译时,我得到了100多个错误。
或者,您缺少包含保护,导致多个头文件包含
或
你正在创建一个循环依赖你的头文件。您应该使用前向声明。
贴出你的代码细节以获得更详细的答案
您了解了一些有关include守卫的知识:http://en.wikipedia.org/wiki/Include_guard
由于操作系统有能力处理长文件名,我已经开始命名我的包含文件,以便它们反映代码在命名空间中的位置:
namespace network {
class connection { bool send( char* stuff ); }
}
最终会出现在"network.connection.h"文件中。
它有助于保持事物的组织,并减少文件名称冲突的机会。
相关文章:
- AcquireCredentialsHandleA() 返回 PFX 文件的0x8009030e(安全包中没有可用的凭据
- 禁止显示有关包含文件中 #pragma 包的警告
- 从二进制文件中读取元素时引发异常(引发异常:读取访问冲突. _Pnext 0xB414D4)
- 选择特定版本的 Visual Studio 命令行工具包,并根据特定版本的C++运行时环境编译文件
- 使用 Win32 读取文件时,glShaderSource 访问冲突
- 如何使用 AWS C++ 开发工具包在给定的开始和结束日期范围内列出 S3 中的文件
- 包括两个文件 C++ 之间的冲突
- 尝试将 std::cerr 重定向到文件时出现访问冲突异常
- 如何链接我自己的 .so 文件而不是操作系统捆绑包 .so 文件?
- 在链接的程序集文件中,我想从 c++ 调用代码访问变量.是否可以在不触发访问冲突的情况下执行此操作?
- 挂钩创建文件抛出异常:读取访问冲突
- 使用开发工具包将文件上传到 AWS C++
- 可变参数模板类 - 0 长度包构造函数冲突
- 从文件读取时读取访问冲突
- 从网络数据包复制一串 wchar 时访问冲突
- TCP-Server以数据包结构(非Java客户端)发送文件
- 致命错误 C1083:无法打开包含文件:'atlbase.h' Pyinsane 包
- 可视化 将 TCP 服务器数据包保存到 C++ 中的文件
- 如何解决头文件中的变量冲突?
- 如何在visual studio 2010 C++中制作带有所需.dll和lib(opencv)文件的.exe文件包