#include <stdio.h>
#include <unordered_map>
#include <iostream>

using namespace std;

int main()
{
int a1 = 1;
int a2 = 2;
int a3 = 3;

std::unordered_map<int, int*> tools;
tools[1] = &a1;
tools[2] = &a2;
tools[3] = &a3;


std::cout << "修改前" << endl;
for(int i = 1; i <= 3; i++){
printf("%d\n",*(tools[i]));
}


std::cout << "修改后" <<endl;
a2= 44;
*(tools[3]) = 55;

printf("%d\n",a1);
printf("%d\n",a2);
printf("%d\n",a3);

for(int i = 1; i <= 3; i++){
printf("%d\n",*(tools[i]));
}

return 0;
}

C++ 动态取变量_ios