摘要: 二叉查找树的查找, 插入, 删除 阅读全文
posted @ 2017-09-10 05:22 moon1992 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 队列的数组实现 阅读全文
posted @ 2017-09-10 04:57 moon1992 阅读(327) 评论(0) 推荐(0) 编辑
摘要: Stack的数组实现 阅读全文
posted @ 2017-09-10 04:33 moon1992 阅读(238) 评论(0) 推荐(0) 编辑
摘要: Stack的链式实现, 创建, Push, Pop, Top, 清空以及销毁操作 阅读全文
posted @ 2017-09-10 04:29 moon1992 阅读(246) 评论(0) 推荐(0) 编辑
摘要: 单链表的创建, 插入, 删除, 查找, 遍历, 销毁 阅读全文
posted @ 2017-09-10 04:09 moon1992 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 二分查找的实现 阅读全文
posted @ 2017-09-10 03:41 moon1992 阅读(184) 评论(0) 推荐(0) 编辑
摘要: test库提供的最小化的测试套件minimal_test, 以及支持全面单元测试的测试套件UTF, 介绍测试断言, 测试用例, 测试套件, 测试夹具的概念 阅读全文
posted @ 2017-09-05 21:26 moon1992 阅读(1756) 评论(0) 推荐(0) 编辑
摘要: light_weight_test轻量级单元测试框架, 只支持最基本的单元测试, 不支持测试用例, 测试套件的概念, 简单小巧, 适合要求不高或者快速测试的工作. 阅读全文
posted @ 2017-09-05 17:26 moon1992 阅读(190) 评论(0) 推荐(0) 编辑
摘要: assert库BOOST_ASSERT, BOOST_ASSERT_MSG宏基本用法, 禁用断言方法, 以及BOOST_ENABLE_ASSERT_HANDLER扩展用法 阅读全文
posted @ 2017-09-05 16:51 moon1992 阅读(310) 评论(0) 推荐(0) 编辑
摘要: 代理模式: 为其他对象提供一种代理以控制对这个对象的访问。实际上是在访问对象时引入一定程度的间接性。 阅读全文
posted @ 2017-08-16 17:08 moon1992 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 进程控制块(PCB); 进程原语: fork, exec族, wait/waitpid 阅读全文
posted @ 2017-08-15 23:37 moon1992 阅读(314) 评论(0) 推荐(0) 编辑
摘要: 顺序容器概述 顺序容器的类型有: |类型 |说明 | | | | |vector | 可变长度数组. 支持快速随机访问. |deque | 双端队列. 支持快速随机访问. |list | 双向链表. 只支持双向顺序访问. |forward_list| 单向链表. 只支持单向顺序访问. |array 阅读全文
posted @ 2017-08-01 15:35 moon1992 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 装饰模式(Decorator) 装饰模式:动态的给一个对象添加一些额外的职能,把所需功能按顺序串联起来并进行控制。 每个要装饰的功能放在单独的类中,并让这个类包装它所要修饰的对象。当需要执行特殊行为时,客户端就可以根据需要有选择的、有顺序的使用装饰功能包装对象了。 装饰模式有效的把类的核心职能和装饰 阅读全文
posted @ 2017-08-01 12:55 moon1992 阅读(175) 评论(0) 推荐(0) 编辑
摘要: "策略模式(Strategy)" 定义一系列的算法,把每一个算法封装起来, 并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化。根据不同的情况,创建不同的对象。对象不同类型相近,方法差别大, 尤其适合经常变动的多种不同算法。 一般用于多个类的方法名都相同,但是实现方式不同注重多个对象的相 阅读全文
posted @ 2017-08-01 11:31 moon1992 阅读(396) 评论(0) 推荐(0) 编辑
摘要: IO类 | iostream 定义了读写流的基本类型| | | | | |istream, wistream |从流读取数据 |ostream, wostream |向流写入数据 |iostream, wiostream |读写流 | fstream 定义了读写命名文件的类型 |ifstream, 阅读全文
posted @ 2017-07-31 22:59 moon1992 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 适用场景 需要创建的对象很多,通常包含switch case或者if else语句,此时将对象的创建移入工厂类中 由于对象的创建过程是我们不需要去关心的,而我们注重的是对象的实际操作,所以,我们需要分离对象的创建和操作两部分,如此,方便后期的程序扩展和维护。 UML类图 ProductA、Produ 阅读全文
posted @ 2017-07-31 22:49 moon1992 阅读(225) 评论(0) 推荐(0) 编辑
摘要: 定义抽象数据类型 定义在类内部的函数是隐式的inline函数. const成员函数 又叫做常量成员函数, 成员函数参数列表之后紧跟const关键字, const修饰的是类this指针. 默认情况下this的类型是指向类类型非常量版本的常量指针. 假如有一个名为MyClass的类, 在该类的普通成员函 阅读全文
posted @ 2017-07-29 22:11 moon1992 阅读(426) 评论(0) 推荐(1) 编辑
摘要: 参数传递 const形参和实参: 顶层const作用于对象本身, 和其他初始化过程一样, 当用实参初始化形参时会忽略掉顶层const, 换句话说, 形参顶层const被忽略掉了, 当形参有顶层const时, 传递给它常量对象或非常量对象都是可以的. 由于顶层const被忽略了, 所以上述两个函数的参 阅读全文
posted @ 2017-07-28 19:29 moon1992 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 标准库类型string string初始化 读写string对象 读写未知数量的string对象 重要操作 注意 : 只能对已存在的元素执行下标操作, 尽量使用 范围for循环 可以有效确保下标合法 迭代器介绍 所有标准库容器都可以使用迭代器(string对象不属于容器类型, 但也支持迭代器). 通 阅读全文
posted @ 2017-07-28 19:08 moon1992 阅读(338) 评论(0) 推荐(0) 编辑
摘要: 初始化与赋值 当对象在创建时获得了一个特定的值, 我们就说这个对象被 初始化 了. 在使用=号时, 如果创建了新的对象, 则为初始化而非赋值 . 初始化不是赋值, 初始化的含义是创建变量时赋予其一个初始值, 而赋值的含义是吧对象的当前值擦除, 而以一个新值代替. 在使用列表初始化(C++11支持)时 阅读全文
posted @ 2017-07-27 23:52 moon1992 阅读(363) 评论(0) 推荐(0) 编辑