g++/gcc 找不到名为 String.hpp 的头文件
g++/gcc cannot find header file named String.hpp
我创建了自己的字符串类并将其命名为"String.hpp",并将此文件包含在我的"String.cpp"中。但是,g++/gcc 说无论我怎么尝试,它都找不到"String.hpp"。此外,它也找不到名为"字符串"的类。
我认为 c++ 中的字符串是小写的"字符串"。"字符串"是C++中的保留类或单词吗?
编辑:
我似乎通过重做代码正文解决了这个问题。名字都保持不变。我想下次发生这种情况时,我会查看自己的代码并尝试在那里找到问题。
在C++中,字符串是标准定义的类型,而不是关键字。并且是这样使用的
#include <string>
//elsewhere
std::string str("hi");
如果你的编译器找不到你的字符串头,那么无论发生什么,它都不会知道你的类。
您应该像这样包含自己的标头。请注意引号,而不是角大括号。尖括号表示编译器应搜索包含目录而不是当前目录。
#include "String.hpp"
//else where
yournamepsace::String str //etc...
这不会与标准版本发生冲突,但是您应该确保它是命名空间的,因为您无疑会处理非常相似的名称。
如果编译器仍然看不到,则需要确保该文件与源文件位于同一目录中。
最后,如果这是某种编程实践,那么继续,但如果这是生产代码,请考虑使用 std::string,世界不需要另一个字符串。 :)
我怀疑你正在做一个
#include <String.hpp>
这会从编译器将搜索文件的位置中排除当前目录。 如果是这种情况,你想做
#include "String.hpp"
在这种情况下,编译器还将搜索当前目录。
相关文章:
- g++ -I 和 -L 命令来查找不起作用的 .hpp 文件
- 致命错误:找不到'boost/uuid/uuid.hpp'文件
- 无法使包含.hpp文件与其中的2个文件一起使用
- 在指向现有内存地址的 hpp 文件中声明成员函数的最佳方法
- 编译器正在查找.当"实施"完全在"我的"中时的CPP文件.HPP文件
- 如何正确使用hpp文件和cpp文件中的嵌套类
- 从一个cpp中给出所使用的头文件和hpp文件的列表
- 如何在 CMakeList 中包含 h/hpp 头文件.txt而不是 cpp 或其他 hpp 文件
- CMake add_executable() 使用.cpp文件或 .hpp 文件
- 我可以使用 cmake/make 编译我使用的所有且仅编译 cpp/hpp 文件吗?
- 致命错误:找不到 SFML/System.hpp' 文件
- 未找到安卓工作室'opencv2/core/core.hpp'文件
- 为什么将.HPP文件包含在.h文件中
- hpp文件中的块,这是c ++语法吗?为什么没有传入参数?有人可以解释一下,请
- C++项目文件夹外部依赖项仅包含 .h 和 .hpp 文件
- GCC:为什么编译.HPP文件与.cpp文件的结果不同
- 根据您的.h或.hpp文件中的代码,有人可以了解您的应用程序
- 我可以#包括在.hpp文件中吗
- LNK2005在.hpp文件中声明函数时出错
- 何时使用 .hpp 文件