1

我有一个运行在i. 对于每次迭代,我希望它创建一个名称为的变量,var_i即如果我的循环运行i=0i=4,它应该创建变量 ,如var_0var_1、和。如何在 C++ 中做到这一点?var_2var_3var_4

4

3 回答 3

3

你不能,变量名必须在编译时知道。您不能在运行时创建新的变量名称。

如果您的变量是连续的,则另一种方法是使用 astd::map或 a 。std::vector

std::map<int,int> int_;
std::vector<int> vint_;
vint_.resize(5);
for ( int i = 0 ; i <= 4 ; i++ )
{
   int_[i] = i;
   vint_[i] = i;
}

您的变量将是int_[0]or vint_[0]through int_[4]or vint_[4]

于 2012-06-11T09:21:06.510 回答
2

您不能在运行时创建变量。改为使用std:vector,这样你会得到var[0],var[1]等。

于 2012-06-11T09:21:13.640 回答
0

您还可以使用所需大小的数组并在循环中使用默认值对其进行初始化

int var[4];
for(int i=0; i < 4; i++){
    var[i] = 0;
}
于 2020-06-02T22:53:00.877 回答