c++关于vector的

来源:百度知道 编辑:UC知道 时间:2024/06/25 01:06:58
#include <iostream>
#include <vector>
#include <string>

using namespace std;

struct tagTest
{
string aa;
string bb;
};

int main(int argc, char *argv[])
{
tagTest tTest[10];
tTest[1].aa = "test";
tTest[1].bb = "test2";
tTest[2].aa = "test";
tTest[2].bb = "test2";
tTest[3].aa = "test";
tTest[3].bb = "test2";
tTest[4].aa = "test";
tTest[4].bb = "test2";

vector<tagTest>vTest;

vTest.push_back(tTest[1]);
vTest.push_back(tTest[2]);
vTest.push_back(tTest[3]);
vTest.push_back(tTest[4]);
vector<tagTest>::iterator p1;
for(p1=vTest.begin();p1!=vTest.end(

#include <time.h>
#include <stdlib.h>

srand(time(NULL));
int index = rand() % 4;
cout << vTest[index].aa << endl;
cout << vTest[index].bb << endl;

可以。
法一: //添加
#include <algorithm>
//在vTest.push_back(tTest[4]);执行完之后 ,写:
random_shuttle(vTest.begin(),vTest.end());

法二://添加:
#include <ctime>
#include <algorithm>
srand(time(0));
for(int i=rand()%4,int j=0;j<4;j++)
cout<<vTest[i]<<endl;
其中,法一先把vector内的元素打乱,然后按序输出;
法二是先获取随机数(0-3),以随机数为下标,访问