C++如何随机访问vector容器元素 5
5个回答
展开全部
vector::operator[]
Example:
// vector::operator[]
#include <iostream>
#include <vector>
using namespace std;
int main ()
{
vector<int> myvector (10); // 10 zero-initialized elements
unsigned int i;
vector<int>::size_type sz = myvector.size();
// assign some values:
for (i=0; i<sz; i++) myvector[i]=i;
// reverse vector using operator[]:
for (i=0; i<sz/2; i++)
{
int temp;
temp = myvector[sz-1-i];
myvector[sz-1-i]=myvector[i];
myvector[i]=temp;
}
cout << "myvector contains:";
for (i=0; i<sz; i++)
cout << " " << myvector[i];
cout << endl;
return 0;
}
Example:
// vector::operator[]
#include <iostream>
#include <vector>
using namespace std;
int main ()
{
vector<int> myvector (10); // 10 zero-initialized elements
unsigned int i;
vector<int>::size_type sz = myvector.size();
// assign some values:
for (i=0; i<sz; i++) myvector[i]=i;
// reverse vector using operator[]:
for (i=0; i<sz/2; i++)
{
int temp;
temp = myvector[sz-1-i];
myvector[sz-1-i]=myvector[i];
myvector[i]=temp;
}
cout << "myvector contains:";
for (i=0; i<sz; i++)
cout << " " << myvector[i];
cout << endl;
return 0;
}
参考资料: www.cplusplus.com
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
和数组一样, v[i]即可
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
operator []
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
引用杰物的回答:
此处的随机是什么意思,如果是直接访问可以用[]运算符,还有一个at()方法也是访问元素的,at比[]更安全,因为越界会出错。
如果是其中任意一个数的话,用stdlib.h中的rand函数,vector.at(rand())%3)这样就行了,但是记住开始要用srand函数初始化!
此处的随机是什么意思,如果是直接访问可以用[]运算符,还有一个at()方法也是访问元素的,at比[]更安全,因为越界会出错。
如果是其中任意一个数的话,用stdlib.h中的rand函数,vector.at(rand())%3)这样就行了,但是记住开始要用srand函数初始化!
展开全部
vector.at(rand())%3)多了一个右括号
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询