我希望能够根据用户输入来更改变量,但是我不想使用if
/ else
语句。我在实际代码中使用了很多变量。有什么方法可以仅通过输入更改变量?
#include <iostream>
using namespace std;
int a = 0;
int b = 0;
string input;
int main() {
cin >> input;
*variable specified by input variable* = 1;
}
答案 0 :(得分:4)
您可以使用关联容器将输入映射到变量。一个例子:
std::unordered_map<std::string, int*> vars = {
{"a", &a},
{"b", &b},
};
// the assignment
*vars.at(input) = 1;