可能重复:
How to get a certain element in a list, given the position?
所以在python中你可以以随机访问方式获取列表中的元素....
list = [1,12,3]
print(list[1])
并打印12 ....
你可以用c ++列表做同样的事情吗?
答案 0 :(得分:9)
在C ++中,最接近你想要的是一个向量:
std::vector<int> v;
v.push_back(1);
v.push_back(12);
v.push_back(3);
std::cout << v[1] << std::endl; // prints 12
您也可以使用提供的迭代器遍历矢量。但是一旦修改了向量(插入或擦除),它就会变得无效。
提供的实际List类(这是一个双向链表),不提供这种功能。
答案 1 :(得分:1)
如果我理解你的问题,你就是在询问数组
int list [3(size)] = {1,12,3};
cout&lt;&lt;列表[1];
答案 2 :(得分:1)
没有。如果使用std :: list,则必须遍历列表以查找特定元素,因为list是双链表,无法使用随机访问运算符访问元素。 这是因为对于列表,在列表中的任何一点插入或删除都是快速有效的,因此开头的第一个元素可能是修改列表后的第三个元素。
答案 3 :(得分:0)
如果你在谈论C ++ STL列表,不,这是列表的主要问题。