C++PRIMER第一轮复习第九章 顺序容器

9.1

vector可变大小数组,支持快速随机访问,在尾部之外的位置插入或删除元素可能很慢

deque 双端队列,支持快速随机访问,在头尾位置插入或删除数据很快。

list 双向链表。支持快速随机访问,在list中任何位置进行插入删除操作。

forward_list 单向链表。只支持单向顺序访问,在链表中任何位置插入删除顺序很快。

array固定大小数组,支持快速随机访问,不能添加或删除元素。

string 与vector类似的容器,但是专门保存字符。随机访问块,在尾部插入删除速度快。

通常,使用vector是最好的选择,除非有很好的理由选择其他容器。

容器的操作:类型别名iterator const_iterator size_type difference_type value_type reference const_reference ;构造函数C c; C c1(c2); C c(b,e);C c{a,b,c...}; 赋值与swap c1=c2; c1={a,b,c...}; a.swap(b); swap(a,b);大小 c.size(); c.max_size(); c.empty() 添加删除元素 c.insert(args); c.emplace(inits); c.erase(args); c.clear(). ==, !=, <=,<, >, >=;获取迭代器 c.begin(),c,end)_,c.cbegin(),c.cend(); reverse_iterator const_reverse_iterator c,rbegin(),c.rend() c.crend(),c,crbegin().

assign操作(顺序容器),允许从一个不同但相容的类型赋值,或者从容器的一个子序列赋值。

list<string> names;
vector<const char*> oldstyle;
names=oldstyle;//错误,类型不匹配
names.assign(oldstyle.cbegin(),oldstyle.cend());

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值