C++高级编程培训
培训对象:中高级程序员、系统分析员、需求调研人员、构架设计师
学员基础:具备一定的编程、分析、设计经验
课程简介:本课程假设学员具备C++编程基础,课程专注于C++编程的高级实践,涉 及:
异常处理、单元测试、调试技术、字符串处理、输入输出流、模板、算法、容器、
运行时类型识别、多重继承、设计模式和并发。
培训内容:
名称
|
详细内容
|
异常
|
处理
传统的错误处理
抛出异常
捕获异常
异常匹配
清理
标准异常
异常规格说明
异常安全
在编程中使用异常
使用异常造成的开销
|
单元测试
|
断言
一个简单的单元测试框架
自动测试
estSuite框架
测试套件
测试框架的源代码
|
调试技术
|
用于代码跟踪的宏
跟踪文件
发现内存泄漏
|
深入理解字符串
|
字符串的内部是什么
创建并初始化C++字符串
对字符串进行操作
字符串的查找
字符串的应用
|
输入输出流
|
为什么引入输入输出流
救助输入输出流
处理流错误
文件输入输出流
输入输出流缓冲
在输入输出流中定位
字符串输入输出流
输出流的格式化
操纵算子
输入输出流程序举例
国际化
|
深入理解模板
|
模板参数
有关函数模板的几个问题
模板特化
名称查找问题
模板编程中的习语
模板元编程
模板编译模型
|
通用算法
|
算法简介
函数对象
STL算法目录
通用实用程序
创建自己的STL风格算法
|
通用容器
|
器和迭代器
字符串容器
从STL容器继承
更多迭代器
基本序列容器:vector、list和deque
集合
堆栈
队列
优先队列
持有二进制位
关联式容器
将STL容器联合使用
清除容器的指针
创建自己的容器
对STL的扩充
非STL容器
|
运行时类型识别
|
运行时类型转换
typeid 操作符
多重继承
合理使用RTTI
TTI的机制和开销
|
多重继承
|
接口继承
实现继承
重复子对象
虚基类
名字查找问题
避免使用多重继承
扩充一个接口
|
设计模式
|
模式的概念
模式分类
单件
命令:选择操作
消除对象耦合
适配器模式
模板方法模式
策略模式:运行时选择算法
职责链模式:尝试采用一系列策略模式
工厂模式:封装对象的创建
构建器模式:创建复杂对象
观察者模式
多重派遣
|
并发
|
动机
C++中的并发
定义任务
使用线程
创建有响应的用户界面
使用执行器简化工作
让步
休眠
优先权
共享有限资源
保证对象的存在
不恰当地访问资源
访问控制
使用保护简化编码
线程本地存储
终止任务
防止输入/输出流冲突
举例观赏植物园
阻塞时终止
中断
线程间协作
等待和信号
生产者-消费者关系
用队列解决线程处理的问题
广播
死锁
|