我实际上是想弄清楚如何在for循环中迭代一些对象,其名称如“Object1,Object2,Object3 ......”
这是一个代码,以举例说明我正在尝试做的事情:
for(int i = 0; i <= numberOfObjects; i++) {
someVariable = Object1.value/Object2.value/Object3.value;
}
在这种情况下,在我拥有Object1,Object2和Object3的代码部分中,我将更改某些内容,例如Object [i]。 在这种情况下,它不能用数组完成,因为我不知道创建了多少对象。
答案 0 :(得分:2)
将对象放入std::vector
。
你的循环看起来像:
for (unsigned int i = 0; i < object_vector.size(); ++i)
{
result = result / object_vector[i].value;
}
object my_objects[] = {object1, object2, /*...*/};
array_size = sizeof(my_objects) / sizeof(object);
for (unsigned int i = 0; i < array_size; ++i)
{
result = result / my_objects[i].value;
}
答案 1 :(得分:0)
使用数组:
std::vector<T> objects{Object1, Object2, Object3};
for (auto&& x : objects) {
someVariable = x.value;
}
没有其他办法可以做到。