码迷,mamicode.com
首页 > 编程语言 > 详细

C++ Primer 第四版读书笔记(八)之顺序容器(续)

时间:2015-01-06 21:38:24      阅读:201      评论:0      收藏:0      [点我收藏+]

标签:

3.6 访问元素

如果容器非空,那么容器类型的front和back成员将返回容器内第一个或最后一个元素的引用。

访问顺序容器内元素的操作
c.back() 返回容器c的最后一个元素的引用。如果c为空,则该操作未定义
c.front() 返回容器c的第一个元素的引用。如果c为空,则该操作未定义
c[n] 返回下标为n的元素的引用
如果n<0或n>c.size(),则该操作未定义
只适用于vector和deque容器
c.at[n] 返回下标为n的元素的引用。如果下标越界,则该操作未定义
只适用于vector和deque容器

3.7 删除元素

删除顺序容器内元素的操作
c.erase(p) 删除迭代器p所指向的元素
返回一个迭代器,它指向被删除元素后面的元素。如果p指向容器内的最后一个元素,则
返回的迭代器指向容器的超出末端的下一位置。如果p本身就是指向超出末端的下一位置
的迭代器,则该函数未定义
c.erase(b, e) 删除迭代器b和e所标记范围内的所有元素
返回一个迭代器,它指向被删除元素段后面的元素。如果e本身就是指向超出末端的下一位置的
迭代器,则返回的迭代器也指向容器的超出末端的下一位置
c.clear() 删除容器c内的所有元素。返回void
c.pop_back() 删除容器c的最后一个元素。返回void。如果c为空容器,则该函数未定义
c.pop_front() 删除容器c的第一个元素。返回viod。如果c为空容器,则该函数未定义

3.7.1 删除第一个或最后一个元素

pop_front和pop_back函数用于删除容器内的第一个和最后一个元素。但vector容器类型不支持pop_front操作。这些操作删除指定的元素并返回void。

pop_front和pop_back函数的返回值并不是删除的元素值,而是void。要获取删除的元素值,则必须在删除元素之前调用front或back函数。

3.7.2 删除容器内的一个元素

erase操作不会检查它的参数。程序员必须确保用作参数的迭代器或迭代器范围是有效的。

3.8 赋值与swap

与赋值相关的操作符都作用于整个容器。处swap操作外,其他操作都可以用erase和insert操作实现。赋值操作符首先删除其做操作数容器中的元素,然后将右操作数容器的所有元素插入到左边容器中。

C++ Primer 第四版读书笔记(八)之顺序容器(续)

标签:

原文地址:http://blog.csdn.net/y601500359/article/details/42456199

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