0

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

string m_name

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

提前致谢。

4

3 回答 3

2

确保您#include <string>位于头文件的顶部,并记住它位于std命名空间:std::string m_name;.

于 2012-12-26T18:49:50.827 回答
1

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

于 2012-12-26T19:06:51.937 回答
1

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

#include <string>

二,如果你不是using namespace std;,那么你必须使用类的完全限定名,即 isstd::string而不仅仅是string.

于 2012-12-26T18:50:38.733 回答