早上无聊,正好接下来的项目可能用到这个类的部分功能,所以小小研究了一下,写了个测试程序,把我关心的功能都试了一下。
#include <stdio.h>
#include <vector>
#include <iostream>
using namespace std;
typedef struct A_s
{
int data;
} A;
int main(int argc, char *argv[])
{
A a;
std::vector<A> v;
vector<A>::iterator it;
int i;
a.data = 10;
v.push_back(a);
a.data = 9;
v.push_back(a);
printf("v.size : %d\n", v.size());
for ( i=0; i<v.size(); i++ )
cout << i << ":" << v[i].data << endl;
/* 换一种打印方法 */
for(it = v.begin(); it < v.end(); ++it)
{
cout << it->data << " ";
}
cout << "\n";
/* 删除 */
vector<A>::iterator it_A;
it_A = &v[0];
v.erase(it_A);
printf("v.size : %d\n", v.size());
for(it = v.begin(); it < v.end(); ++it)
{
cout << it->data << endl;
}
return 0;
}
附上输出:
v.size : 2
0:10
1:9
10 9
v.size : 1
9
Press any key to continue