预备知识 |
- C++简介
- 面向对象编程
- C++和通用编程
- C++的起源
- 可移植性和标准
- 程序创建的技巧
- 创建源代码文
- 编译和链接
|
开始学习C++ |
|
处理数据 |
- 简单变量
- 整型short、int和long
- 无符号类型
- C++如何确定常量的类型
- char类型:字符和小整数
- 新的bool类型
- const限定符
- 浮点数
- C++算术操作符
- 除法分支
- 求模操作符
- 类型转换
|
复合类型 |
- 数组
- 字符串
- string类简介
- 结构简介
- 共用体
- 枚举
- 指针和自由存储空间
- 引用与指针的区别:提倡使用引用
- 程序说明
- 指针和字符串
- 使用new创建动态结构
- 自动存储、静态存储和动态存储
|
循环和关系表达式 |
- for循环
- 关系表达式
- while循环
- do while循环
- 循环和文本输入
- 嵌套循环和二维数组
|
分支语句和逻辑操作符 |
- if语句
- 逻辑表达式
- 字符函数库cctype
- ?:操作符
- switch语句
- break和continue语句
- 读取数字的循环
- 简单文件输入/输出
|
函数——C++的编程模块 |
- 复习函数的基本知识
- 函数参数和按值传递
- 函数和数组
- 函数和二维数组
- 函数和C-风格字符串
- 函数和结构
- 函数和string对象
- 递归
- 函数指针
|
函数探幽 |
- C++内联函数
- 引用变量
- 默认参数
- 函数重载
- 函数虚化――在C++类中讲解
- 函数模板
|
内存模型和名称空间 |
- 单独编译
- 存储持续性、作用域和链接性
- placement new操作符
- 名称空间
|
对象和类 |
- 过程性编程和面向对象编程:过程性编程是如何及其缺点;面向对像编程是如何及优点;缺点就是考虑问题复杂了,但在软件工程化的方面贡献很大,如可维护、可扩展等方面。面向对像编程的核心概念:抽象、封装、继承。
- 抽象和类
- C++对象实现模型
- 类的构造函数和析构函数
- C++构造函数的语义学,构造函数的语义及构造函数的种类
- 析构函数的虚化
- 类的数据成员(封装):,继承与数据成员;成员的初始化列表;对像与普通变量成员在创建与销毁时的区别;访问权限public,private,protected及在继承上的区别。
- 静态与非静态:方法与数据成员。
- this指针:函数的第一个参数,因为函数是共用的,所以this指针用于区分不同对像的数据。
- 接口和实现:概念的区分,接口的好处及必要性,接口在C++中的实现;
- 类作用域
|
使用类 |
|
类和动态内存分配 |
- 动态内存和类
- 对象数组:创建及销毁问题,还有在一个类体系中如何创建其数组,用基类的指针。
- 队列模拟
|
类继承及代码重用 |
- 继承的种类(public private protect )及安全级别及各种语义(public:继承——is-a关系)
- 基类析构函数虚化的必要(内存泄漏举例,注:析构函数不能调用虚函数)
- 一个简单的基类
- 公有继承
- 私有继承
- 抽象基类:多态性(动态类型与静态类型)
- 多重继承
- 类模板
- 引用与继承的区别:各个优缺点;提倡引用。
- 继承和动态内存分配
- 类设计回顾及一些原则
|
友元、异常和其他 |
|
标准模板库 |
- 模板的概念(重用)与泛型编程技术
- 模板函数与模板类
定义,模板类常量的参数的应用
语义
- 迭代子的含义及种类及区别及简单实现
- 容器:容器的作用,种类,应用场合;实习上的区别,性能比较
- 算法
- 三者(迭代子、容器、算法)间的关系
- 分析vector类代码
- 应用例子
|
STL方法和函数 |
- 所有容器共有的成员
- vector、list和deque的其他成员
- set和map的其他成员
- 非修改式序列操作
- 修改式序列操作
- 排序和相关操作
- 数字操作
|