无法在头文件中使用自定义对象?

时间:2012-12-26 18:48:36

标签: c++ class

我在头文件(声明)和.cpp文件(定义)中构建一个类。在“私人”部分,我有一个

string m_name

当我尝试编译它时编译器给出了一个错误。如果我用char *替换字符串,它可以正常工作。但是,我需要一个字符串,而不是char *。我应该在某处或某处添加字符串标题吗?

提前致谢。

3 个答案:

答案 0 :(得分:2)

确保您{j}位于头文件的顶部,并记住它位于#include <string>命名空间内:std

答案 1 :(得分:1)

我怀疑有两个问题:一,“我应该在某处添加字符串标题吗?” - 你应该

#include <string>

其中两个,如果你不是using namespace std;,那么你必须使用该类的完全限定名称,即std::string而不仅仅是string

答案 2 :(得分:1)

如果你想使用字符串,你基本上需要包含C的头文件#include <string.h>或C ++的#include <cstring>,否则你会收到错误。