Essential C++学习第三章 泛型编程风格 STL

概述:STL standard template library 标准模板库=container+generic algorithm(容器+泛型算法)

container:顺序容器:vector List  deque关联容器:map set

泛型算法核心:iterator 泛型指针

1:容器小知识

vector可以为空,array不行

2:泛型算法小知识

Iterator获得:  container.begin();  首元素地址

   container.end();末尾元素的下一个地址

3:容器共通操作

equality inequality assignment empty size clear  begin end  insert erase

4:顺序容器 vector list deque

vector:适合表达数列,随机查找,不适合插入和删除

list:双向指针,适合插入和删除,不适合随机查找

deque和vector存储形式类似,但适合首尾插入和删除

push_back(),pop_back(),list和deque还有pop_front和push_front操作(PS:pop没有返回值)

erase返回最后一个删除元素的下一个元素

list并不支持iterator的偏移运算

5:泛型算法 头文件 #include<algorithm>

find(),搜索无序集合,找到返回iterator,否则返回last

binary_search()搜索有序集合,返回bool

count(),返回元素个数

search(),是否存在某个子序列,true返回子序列起始,false返回容器末尾iterator

6:function object #include<functional>

6个算术运算:plus<type>,minus<type>,multiplies,divides,modules

6个关系运算:less,less_equal,greater,greater_equal,equal_to,not_equal_to

3个逻辑运算:logical_and,logical_or,logical_not

7:function object adapter

bind1st ,bind2nd 指定值绑定第一或第二操作数







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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值