摘要: 1、适配器是稍微修改某些功能,比如三个参数改为两个参数,函数的名称改一下等等,可以出现在容器、迭代器和仿函数中。 2、适配器相当于对某个东西进行封装,例如A是B的适配器,则真正的功能实现是在B中,可以通过继承B或者组合B来实现。 3、容器的适配器:改造后只提供部分接口 4、仿函数适配器 bind2n 阅读全文
posted @ 2018-12-29 22:37 牧马人夏峥 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 1、仿函数为算法服务,特点是重载操作符() 2、一共分为3大类,包括算术类,逻辑运算类,相对关系(比较大小):都继承了binary_function 3、仿函数的一些调用示例,其中右边的仿函数没有继承binary_function,并没有真正的融入STL,有些特性可能没有。 4、仿函数可以继承两个类 阅读全文
posted @ 2018-12-29 16:56 牧马人夏峥 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 、算法 1、算法通过迭代器来操作容器中的数据; 2、算法为模板函数; 二、迭代器与算法 1、根据移动能力,将迭代器分成了五类 2、使用萃取,输出各个容器中,迭代器的类别 3、其中istream, ostream的迭代器为input和output 4、算法根据迭代器的种类,去调用相应的函数。注意返回值 阅读全文
posted @ 2018-12-29 16:17 牧马人夏峥 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 关联容器的查找和插入都很快,类似于数据库,通过key来查找value;底层通过红黑树和hast table来支持。 一、红黑树 1、按照key来排序 二、set/multiset 1、key即value,所以不允许修改值 2、将迭代器设置为const,来阻止修改其值; 3、set的操作,都交给了红黑 阅读全文
posted @ 2018-12-29 11:02 牧马人夏峥 阅读(136) 评论(0) 推荐(0) 编辑