09 2017 档案

摘要:面向对象编程(OOP)和泛型编程都能处理在编写程序时不知道类型的情况, 不同之处在于: OOP能处理类型在程序运行之前都未知的情况, 而在泛型编程中, 在编译时就能获知类型了. 函数模板 模板是C++中泛型编程的基础, 一个模板就是一个创建类或函数的蓝图或者说公式. 模板定义以关键字template 阅读全文
posted @ 2017-09-11 22:44 moon1992 阅读(1018) 评论(0) 推荐(0)
摘要:OOP: 概述 面向对象程序设计的核心思想是 数据抽象 , 继承 和 动态绑定 . 通过数据抽象, 我们可以实现类的接口与实现的分离; 使用继承, 可以定义相似的类型并对其相似关系建模; 使用动态绑定, 可以在一定程度上忽略相似类型的区别, 而以统一的方式使用它们的对象. 继承 基类负责定义在层次关 阅读全文
posted @ 2017-09-11 22:43 moon1992 阅读(437) 评论(0) 推荐(0)
摘要:基本概念 重载运算符是具有特殊名字的函数: 它们的名字由关键字operator和其后要定义的运算符号共同组成. 重载运算符函数的参数数量与该运算符作用的运算对象数量一样多. 对于二元运算符来说, 左侧运算对象传递给第一个参数, 而右侧运算对象传递给第二个参数. 除了重载的函数调用运算符operato 阅读全文
posted @ 2017-09-11 22:42 moon1992 阅读(474) 评论(0) 推荐(0)
摘要:拷贝, 赋值与销毁 当定义一个类时, 我们显示地或隐式地指定在此类型的对象拷贝, 移动, 赋值和销毁时做什么. 一个类通过定义5种特殊的成员函数来控制这些操作, 包括: 拷贝构造函数 , 拷贝赋值运算符 , 移动构造函数 , 移动赋值运算符 和 析构函数 . 编译器可以合成这些成员函数, 其他的函数 阅读全文
posted @ 2017-09-11 22:41 moon1992 阅读(475) 评论(0) 推荐(0)
摘要:动态内存与只能指针 静态内存 用来保存局部static对象, 类static数据成员以及定义在任何函数之外的变量. 栈内存用来保存定义在函数内的非static对象. 分配在静态或栈内存中的对象由编译器自动创建和销毁. 栈中的对象, 仅在其定义的程序块运行时才存在; static对象在使用之前分配, 阅读全文
posted @ 2017-09-11 22:40 moon1992 阅读(325) 评论(0) 推荐(0)
摘要:[toc] 使用关联容器 关联容器与顺序容器有着根本的不同: 关联容器中的元素是按关键字来保存和访问的, 按顺序容器中的元素是按它们在容器中的位置来顺序保存和访问的. 关联容器支持高效的关键字查找和访问. 有两个主要的关联容器类型: map和set. map: map中的元素是一些关键字—值(key 阅读全文
posted @ 2017-09-11 22:39 moon1992 阅读(325) 评论(0) 推荐(0)
摘要:概述 泛型算法: 称它们为”算法“, 是因为它们实现了一些经典算法的公共接口, 如搜索和排序; 称它们是”泛型的“, 是因为它们可以用于不同类型的元素和多种容器类型, 不仅包括标准库类型, 还包括内置的数组类型. 大多数算法都定义在algorithm中, 标准库还在头文件numeric中定义了一组数 阅读全文
posted @ 2017-09-11 22:38 moon1992 阅读(210) 评论(0) 推荐(0)
摘要:插入排序, shell排序, 选择排序, 冒泡, 堆排序, 归并排序, 快速排序 阅读全文
posted @ 2017-09-10 06:06 moon1992 阅读(336) 评论(0) 推荐(0)
摘要:AVL树的插入, 旋转操作 阅读全文
posted @ 2017-09-10 05:54 moon1992 阅读(229) 评论(0) 推荐(0)
摘要:二叉查找树的查找, 插入, 删除 阅读全文
posted @ 2017-09-10 05:22 moon1992 阅读(213) 评论(0) 推荐(0)
摘要:队列的数组实现 阅读全文
posted @ 2017-09-10 04:57 moon1992 阅读(337) 评论(0) 推荐(0)
摘要:Stack的数组实现 阅读全文
posted @ 2017-09-10 04:33 moon1992 阅读(248) 评论(0) 推荐(0)
摘要:Stack的链式实现, 创建, Push, Pop, Top, 清空以及销毁操作 阅读全文
posted @ 2017-09-10 04:29 moon1992 阅读(257) 评论(0) 推荐(0)
摘要:单链表的创建, 插入, 删除, 查找, 遍历, 销毁 阅读全文
posted @ 2017-09-10 04:09 moon1992 阅读(221) 评论(0) 推荐(0)
摘要:二分查找的实现 阅读全文
posted @ 2017-09-10 03:41 moon1992 阅读(193) 评论(0) 推荐(0)
摘要:test库提供的最小化的测试套件minimal_test, 以及支持全面单元测试的测试套件UTF, 介绍测试断言, 测试用例, 测试套件, 测试夹具的概念 阅读全文
posted @ 2017-09-05 21:26 moon1992 阅读(1802) 评论(0) 推荐(0)
摘要:light_weight_test轻量级单元测试框架, 只支持最基本的单元测试, 不支持测试用例, 测试套件的概念, 简单小巧, 适合要求不高或者快速测试的工作. 阅读全文
posted @ 2017-09-05 17:26 moon1992 阅读(206) 评论(0) 推荐(0)
摘要:assert库BOOST_ASSERT, BOOST_ASSERT_MSG宏基本用法, 禁用断言方法, 以及BOOST_ENABLE_ASSERT_HANDLER扩展用法 阅读全文
posted @ 2017-09-05 16:51 moon1992 阅读(338) 评论(0) 推荐(0)