码迷,mamicode.com
首页 > 其他好文 > 详细

vector

时间:2019-10-15 10:18:36      阅读:85      评论:0      收藏:0      [点我收藏+]

标签:vector   理解   异常   void   内存   分类   返回值   pop   顺序   

vector这个容器表示可变数组的序列容器,也是连续的内存空间,我们在理解它的时候就按照顺序表的方式去理解即可。
我们在看vector的常用接口时还是将它分类来看:构造与析构、迭代器、元素访问、元素修改、容量。

构造---->
常用构造方式:
std::vector<int> first; //空
std::vector<int> second (4,100); //4个值为100的元素
std::vector<int> third (second.begin(),second.end()); //区间构造
std::vector<int> fourth (third); //拷贝构造
std::vector<int> v = { 1, 2, 3, 4, 5 };

迭代器--->
begin()
end()
返回值是iterator类型

元素访问--->
[]和at都可以随即访问vector中的元素,不同是在越界访问时at抛出异常,而[]则是触发assert
front()和back()分别返回这个容器第一个元素和最后一个元素的引用。
元素修改--->
1.assgin:有可能发生扩容

vector<int> v = { 1, 2, 3, 4, 5 };
    v.assign(3, 5);
    for (auto e : v)
    {
        cout << e;
    }

输出555,说明assign就是将容器中替换为n个值为val的元素
2.push_back和pop_back尾插和尾删操作
3.insert插入
①:
iterator insert (iterator position, const value_type& val);
向pos位置插入值为val的元素
②:
void insert (iterator position, size_type n, const value_type& val);
向pos插入n个值为val的元素
4.earse:
iterator erase (iterator position);
iterator erase (iterator first, iterator last);
5.clear()清空
容量
和string中基本没有差别

vector

标签:vector   理解   异常   void   内存   分类   返回值   pop   顺序   

原文地址:https://blog.51cto.com/14239789/2442357

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!