2019年1月4日

摘要: 与其他容器不同,链表类型list和forward_list定义了几个成员函数形式的算法。定义了独有的sort、merge、remove、reverse和unique算法。通用版本的sort要求随机访问迭代器,因此不能用于list和forward_list,因为这两个类型分别提供双向迭代器和前向迭代器 阅读全文

posted @ 2019-01-04 16:35 Summer_8918 阅读(140) 评论(0) 推荐(0)

摘要: 大多数算法采用下面四种形式之一: alg (beg, end, other parms); alg (beg, end, dest, other parms); alg (beg, end, beg2, other parms); alg (beg, end, beg2, end2, other p 阅读全文

posted @ 2019-01-04 16:34 Summer_8918 阅读(154) 评论(0) 推荐(0)

摘要: 迭代器 除了为每个容器定义的迭代器之外,标准库在头文件iterator中还定义了额为几种迭代器,包括以下几种 插入迭代器 绑定到一个容器上,可用来向容器插入元素 流迭代器 绑定到输入或输出流上,可用来遍历所关联的IO流 反向迭代器 向后而不是向前移动,除了forward_list之外的标准库都有反向 阅读全文

posted @ 2019-01-04 16:33 Summer_8918 阅读(266) 评论(0) 推荐(0)

摘要: 定制操作——为算法定义额外的版本,允许我们提供自己定义的操作来代替默认运算符。 1、向算法传递函数 谓词:一个可调用的表达式,其返回结果是一个能用作条件的值。 标准库算法使用的谓词分为两类:一元谓词(只接受单一参数)和二元谓词(接受两个参数)。接受谓词参数的算法对输入序列中的元素调用谓词。 stab 阅读全文

posted @ 2019-01-04 16:28 Summer_8918 阅读(143) 评论(0) 推荐(0)

摘要: 《C++ primer》第五版读书笔记 标准库容器定义的操作集合惊人的小。标准库并未给每个容器添加大量功能,而是提供了一组算法,这些算法的大多数都独立于任何特定的容器。这些算法是通用的(泛型的):它们可用于不同类型的容器和不同类型的元素。标准库并未给每个容器都定义成员函数来实现这些操作,而是定义一组 阅读全文

posted @ 2019-01-04 16:26 Summer_8918 阅读(130) 评论(0) 推荐(0)