我有一个关于C ++的问题。
我想使用变量值作为下一个变量的名称。
示例:
用户写入值
cin>>PlayerName;
// PlayerName ='John';
现在app应该为变量“John”添加+1
John=John+1;
怎么做? 此致
答案 0 :(得分:5)
你不能用C ++做到这一点(至少没有疯狂的hackery)。您要做的是“反射” - 在运行时编辑您的程序。这在Python中很容易,但在C ++中需要恶作剧。
要回答你的问题的精神,即“我如何以编程方式根据用户输入编辑内容”是使用地图,正如Neil Kirk建议的那样,它们的键是字符串。
然后你会做类似
的事情std::map<std::string, int> playerScores;
playerScores["john"] = 0;
cin >> playerName;
playerScores[playerName] += 1;