#include<vector>
using std::vector;
vector<int> ivec;//初始状态为空
vector<int> ivec1 = ivec;
vector<string> v1{"a","b"}//列表初始化
vector<int>ivec2(10, -1);//10个int元素,都是-1;
vector<int>ivec3(10)//10个元素,值由类型决定,int为0;
vector<int>ivec4{10,1}//2个元素,分别为10,1
v.push_back(t)//向v的尾端添加一个值为t的元素
vector<int> v6;
for (int i = 0; i != 100; i++)
v6.push_back(i);
string t1;//运行时才知道个数
vector<string> t;
while (cin >> t1)
{
t.push_back(t1)
}
其他常见操作
v.empty()//不含元素,返回真;
v.size()//返回大小
使用范围for循环输出全部元素
vector<int> v1{1,2,4,3}
for(auto &i:v1)
i *= i;
for (auto &i : v1)
cout << i << " ";
vector对象(以及string对象)的下标运算符可用于访问已存在的元素,但不能用于添加元素。
试图用下标去访问一个不存在的元素将引发错误,不过这种错误不会被编译器发现,而是在运行时产生一个不可预知的值。
确保下标合法的一种有效手段是尽可能使用范围for语句
vector<int> v1;
for (decltype(v1.size()) i = 0; i != 10; i++)
v1[i] = i;//错误,v1为空容器
vector的其余操作跟string差不多
原文地址:http://blog.csdn.net/jkelion/article/details/45789005