- #include <iostream>
- #include <vector>
- using namespace std;
- void main()
- {
- vector<int>ivec1(10,42); //内置方法,初始化的内容为10个42
- vector<int>ivec2(10);
- vector<int>::size_type ix=0;
- for(ix;ix<10;++ix)
- {
- ivec2[ix]=42; //下标操作
- }
- vector<int>ivec3(10);
- for(vector<int>::iterator iter=ivec3.begin();iter!=ivec3.end();++iter)
- {
- *iter=42; //迭代器
- }
- /////下面两种方法最佳,他们使用标准库定义的操作,无须再定义vector对象时指定容器的大小。比较灵活且不容易出错.
- vector<int>ivec4;
- vector<int>::iterator iter=ivec4.end();
- for(int i=0;i!=10;++i)
- {
- ivec4.insert(iter,42); //在指定位置iter前插入值为的元素,返回指向这个元素的迭代器,
- iter=ivec4.end();
- }
- vector<int>ivec5;
- vector<int>::size_type cnt=1;
- for(cnt;cnt<=10;++cnt)
- {
- ivec5.push_back(42); //push_back()添加值为的元素到当前vector末尾
- }
- }
以上代码转自http://hi.baidu.com/jiang_yy_jiang/blog/item/5efa4d94d0366e11d31b70ad.html
下面还有一种赋值方法:通过数组指针给vector对象赋值:
如下:
- int myarray[5] = {1,3,5,7,9};
- vector<int> myvector(myarray , myarray+5);