1

我正在尝试使用字符串来保存玩家姓名。当我输入

#include <string>

这工作正常,VS2010 甚至自动填充文本。然后我尝试使用一个字符串,但我得到一个未找到的标识符:

#include <string.h>

class Player{
    string name;
int playerIndex;
    int position;
public:
    Player(string name, int index, int pos);
    void move();

}; 

另一方面,同样的事情(或类似的事情发生在矢量上)

#include <vector>

vector<cell> vBoard;

错误:向量不是模板

4

2 回答 2

2

C++ 库中的所有内容都在 namespacestd中,因此它不会污染全局命名空间。您需要限定名称:

std::string name;
std::vector<cell> board;

您还使用了错误的标题名称;你<string>不想<string.h>

于 2013-08-03T17:54:36.663 回答
1

您缺少命名空间

using namespace std;

或尝试

std::string
于 2013-08-03T17:55:28.817 回答