包括c++中的文件

Including files in C++

本文关键字:文件 c++ 包括      更新时间:2023-10-16

我正试图将我的类头包含在main和我的类实现中。奇怪的是main完美地找到了头文件,但是通过类实现,我得到了"没有这样的文件或目录"。为什么会发生这种情况?我的意思是,我的项目中的一个文件能够完美地找到头文件,但同一项目中的另一个文件无法找到相同的头文件的可能原因是什么?

我正在使用CodeBlocks 10.05

谢谢

编译类实现时,编译器为头文件搜索的路径列表必须不同。

类实现和主文件是否在同一目录?如果不是,那么问题可能是在大多数编译器上搜索的第一个路径是包含被编译文件的目录*,并且头文件与主文件在同一个文件中,但不是类实现文件。

我不知道你的编译器是否提供它,但有些有一个详细的模式,将列出正在搜索头文件的路径。如果我上面的评论没有帮助,那么可能会有帮助。

  • 假设您使用引号包含文件。在include中使用引号和尖括号的唯一区别是,使用引号意味着包含.cpp文件的目录在列出的所有其他路径(在命令行中,在环境变量中,在隐含的系统包含路径中)之前搜索头文件。

确保您的目录配置正确,只要实现包含在项目中,它就应该正确编译。另外,就像Fred Larson说的,确保你在文件周围加上引号,而不是尖括号,否则它会在标准目录中查找,而不会找到你的文件。