2013-05-01 22 views
-2

我不知道是否有一种方法,使一吨的变量迅速用循环或迅速在C++在C++中制作大量变量?

比方说你试图通过item100,使一吨的变量称为item1,使您可以编辑任何你想要的项目,如何创建所有这些变量,而不必手动输入每一个变量?

这是可能的或其他方式来实现类似的结果?

+10

看着你的C++手册术语“阵列”。 – 2013-05-01 03:10:58

回答

4

创建一个数组:

std::array<int, 100> items; 

int items[100]; 

现在,你可以从一个从零开始的索引来访问每个项目:

items[0] = 0; 
items[66] = 0xffff; 
/* etc */ 

我想我更喜欢std::array如果它是可用的。迭代器和边界检查at函数是有用的。

+1

我不确定你为什么摆脱了非常好的原始数组示例... – 2013-05-01 03:12:58

+0

请记住这些数组是C++ 11。 – paxdiablo 2013-05-01 03:14:00

+0

谢谢你们,这些都是很好的答案 – 2013-05-01 03:23:21

6

定义的阵列,而不是吨不同变量:

Type array[100]; 

或者更好地利用std::vector代替:

std::vector<Type> v(100); //#include <vector> 

或者如果它是固定大小,然后std::array

std::array<Type, 100> a; //#include <array> //only C++11 

在C++中搜索数组和向量。你会在这个网站上看到很多话题。

+0

'std :: array'怎么样? – mfontanini 2013-05-01 03:11:45

+5

取决于“更好”而+1的含义,因为通过你的照片,你大概有一岁,这个答案显示了那个年龄段令人难以置信的洞察力:-) – paxdiablo 2013-05-01 03:11:52

1

为什么不干脆:

int items[100]; 

这给你item0到item99这样

item[0] = 10; 
item[99] = 6; 

等等

此代码是C &℃之间便携式++其他阵列不像或基于矢量的选项。

如果你想遍历,你可以做这样的

// e.g. set all items to zero 
for (int i = 0; i < 100; i++){ 
    items[i] = 0; 
}