Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/151.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何在循环中动态创建变量(c+;+;)_C++ - Fatal编程技术网

C++ 如何在循环中动态创建变量(c+;+;)

C++ 如何在循环中动态创建变量(c+;+;),c++,C++,我想在循环中创建一些变量,例如 for(int i = 0; i < _vector.size(); i++) //_vector is a vector struct { auto v = _vector.at(i); auto xi = get_name(v); //how to create x0,x1,x2,x3.....dynamically in this loop } for(int i=0;i

我想在循环中创建一些变量,例如

for(int i = 0; i < _vector.size(); i++) //_vector is a vector struct
{
  auto v = _vector.at(i);
  auto xi = get_name(v);   //how to create x0,x1,x2,x3.....dynamically in this loop
}
for(int i=0;i<\u vector.size();i++)/u vector是一个向量结构
{
自动v=_向量在(i)处;
自动席= GETYNEX(V);/ /如何在这个循环中动态创建X0、X1、X2、X3……
}
有人知道怎么做吗?
非常感谢

如果您想将这些变量引用为x1、x2等,最好创建一个向量来存储这些变量

下面的代码是为了支持整数而编写的,但是,可以用另一种数据类型替换

vector<int> x;
for(int i = 0; i < _vector.size(); i++) //_vector is a vector struct
{
  auto v = _vector.at(i);
  x.push_back(get_name(v));   //sets the value of x.at(0), x.at(1)...
}
向量x;
对于(int i=0;i<_vector.size();i++)/_vector是一个向量结构
{
自动v=_向量在(i)处;
x、 向后推(get_name(v));//设置x.at(0)、x.at(1)的值。。。
}

很不清楚你在说什么,我认为OP误解了关键字的意思。在标准C++中是不可能的。对于类似的问题,如果您正在寻找创建字符串x0,x1,x2,其中x0,x1,x2是变量,这是不可能的。OP,考虑如何在循环之外使用这些变量,即使可以创建它们。由于它们没有在编译时定义,编译器对它们一无所知。在C++中,这没有道理。但既然你说的是动态变量,你可以使用一个映射,其中键是你的“变量名”,值是它的值。但是没有匹配的构造函数来初始化我的数据type@yisun03您应该能够在向量中使用数据类型。我们可以看到数据类型背后的代码吗?数据类型是Z3:ExPR,Z3是一个定理证明器,我使用它的C++ API,Z3::EXPR没有默认值。constructor@yisun03如果您发布了
get\u name
函数的代码,可能会有所帮助。我建议提交一个新的问题和这些信息,因为你更有可能吸引更熟悉这个库的人。