摘要: 1函数对象一个行为类似函数的对象可以没有参数,也可以带有若干参数其功能是获取一个值,或者改变操作的状态。 例 普通函数就是函数对象 重载了“()”运算符的类的实例是函数对象 函数对象概念图 使用两种方式定义表示乘法的函数对象 通过定义普通函数(例10-13) 通过重载类的“()”运算符(例10-14 阅读全文
posted @ 2018-01-06 02:38 LeoSirius 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 1关联容器分类和基本功能 关联容器的特点和接口关联容器的特点 每个关联容器都有一个键(key) 可以根据键高效地查找元素接口 插入:insert 删除:erase 查找:find 定界:lowerbound、upperbound、equal_range 计数:count 四种关联容器 单重关联容器( 阅读全文
posted @ 2018-01-05 17:22 LeoSirius 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 顺序容器 向量(vector) 双端队列(deque) 列表(list) 单向链表(forward_list) (以上四种在逻辑上可看作是一个长度可扩展的数组) 数组(array) 元素线性排列,可以随时在指定位置插入元素和删除元素。 必须符合Assignable这一概念(即具有公有的拷贝构造函数并 阅读全文
posted @ 2017-12-29 13:44 LeoSirius 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 容器类是容纳、包含一组元素或元素集合的对象。基于容器中元素的组织方式:顺序容器、关联容器按照与容器所关联的迭代器类型划分:可逆容器、随机访问容器 容器的基本功能与分类顺序容器 array(数组)、vector(向量)、deque(双端队列)、forward_list(单链表)、list(列表)(有序 阅读全文
posted @ 2017-12-28 14:00 LeoSirius 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 迭代器是算法和容器的桥梁 迭代器用作访问容器中的元素 算法不直接操作容器中的数据,而是通过迭代器间接操作算法和容器独立 增加新的算法,无需影响容器的实现 增加新的容器,原有的算法也能适用 输入流迭代器和输出流迭代器输入流迭代器 istream_iterator<T> 以输入流(如cin)为参数构造 阅读全文
posted @ 2017-12-27 22:30 LeoSirius 阅读(230) 评论(0) 推荐(0) 编辑
摘要: 1泛型程序设计的基本概念泛型程序设计: 编写不依赖于具体数据类型的程序 将算法从特定的数据结构中抽象出来,成为通用的 C++的模板为泛型程序设计奠定了关键的基础 术语:概念用来界定具备一定功能的数据类型。例如: 将“可以比大小的所有数据类型(有比较运算符)”这一概念记为Comparable 将“具有 阅读全文
posted @ 2017-12-27 21:17 LeoSirius 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 静态数组是具有固定元素个数的群体,其中的元素可以通过下标直接访问。动态数组由一系列位置连续的,任意数量相同类型的元素组成。vector就是用类模板实现的动态数组。 阅读全文
posted @ 2017-12-27 20:46 LeoSirius 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 线性群体的概念 群体是指由多个数据元素组成的集合体。群体可以分为两个大类:线性群体和非线性群体。 线性群体中的元素按位置排列有序,可以区分为第一个元素、第二个元素等。 非线性群体不用位置顺序来标识元素。 线性群体中的元素次序与其逻辑位置关系是对应的。 在线性群体中,又可按照访问元素的不同方法分为 直 阅读全文
posted @ 2017-12-27 20:44 LeoSirius 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 1函数模板函数模板定义语法 template <模板参数表> 模板参数表的内容 类型参数:class(或typename) 标识符 常量参数:类型说明符 标识符 模板参数:template <参数表> class标识符 2类模板 阅读全文
posted @ 2017-12-26 15:47 LeoSirius 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 多态行为的基础:基类声明虚函数,继承类声明一个函数覆盖该虚函数覆盖要求: 函数签名(signatture)完全一致函数签名包括:函数名 参数列表 const 显式函数覆盖 C++11 引入显式函数覆盖,在编译期而非运行期捕获此类错误。 在虚函数显式重载中运用,编译器会检查基类是否存在一虚拟函数, 与 阅读全文
posted @ 2017-12-26 15:23 LeoSirius 阅读(139) 评论(0) 推荐(0) 编辑