使用变量值作为C ++中的名称下一个变量

时间:2015-10-29 17:30:09

标签: c++

我有一个关于C ++的问题。

我想使用变量值作为下一个变量的名称。

示例:

用户写入值

cin>>PlayerName;

// PlayerName ='John';

现在app应该为变量“John”添加+1

John=John+1;

怎么做? 此致

1 个答案:

答案 0 :(得分:5)

你不能用C ++做到这一点(至少没有疯狂的hackery)。您要做的是“反射” - 在运行时编辑您的程序。这在Python中很容易,但在C ++中需要恶作剧。

要回答你的问题的精神,即“我如何以编程方式根据用户输入编辑内容”是使用地图,正如Neil Kirk建议的那样,它们的键是字符串。

然后你会做类似

的事情
std::map<std::string, int> playerScores;
playerScores["john"] = 0;
cin >> playerName;
playerScores[playerName] += 1;