
我的新书《深入应用C++11:代码优化与工程级应用》已经开始在华章微店发售了,下面是链接。
适用读者:C++11初学者和爱好者。
到时候书的勘误和更新会发布在当前博客。
如果有意见和建议欢迎发送到专门的邮箱:cpp11book@163.com
目录
目 录
前言
第一篇 C++11改进我们的程序
第1章 使用C++11让程序更简洁、更现代
1.1 类型推导
1.2 模板的细节改进
1.3 列表初始化
1.4 基于范围的for循环
1.5 std::function和bind绑定器
1.6 lambda表达式
1.7 tupe元组
1.8 总结
第2章 使用C++11改进程序性能
2.1 右值引用
2.2 move语义
2.3 forward和完美转发
2.4 emplace_back减少内存拷贝和移动
2.5 unordered container无序容器
2.6 总结
第3章 使用C++11消除重复,提高代码质量
3.1 type_traits——类型萃取
3.2 可变参数模板
3.3 可变参数模版和type_taits的综合应用
3.4 总结
第4章 使用C++11解决内存泄露的问题
4.1 shared_ptr共享的智能指针
4.2 unique_ptr独占的智能指针
4.3 weak_ptr弱引用的智能指针
4.4 通过智能指针管理第三方库分配的内存
4.5 总结
第5章 使用C++11让多线程开发变得简单
5.1 线程
5.2 互斥量
5.3 条件变量
5.4 原子变量
5.5 call_once/once_flag的使用
5.6 异步操作
5.7 线程异步操作函数async
5.8 总结
第6章 使用C++11中便利的工具
6.1 处理日期和时间的chrono库
6.2 数值类型和字符串的相互转换
6.3 宽窄字符转换
6.4 总结
第7章 C++11的其他特性
7.1 委托构造函数和继承构造函数
7.2 原始的字面量
7.3 final和override关键字
7.4 内存对齐
7.5 C++11新增的便利算法
7.6 总结
第二篇 C++11工程级应用
第8章 使用C++11改进我们的模式
8.1 改进单例模式
8.2 改进观察者模式
8.3 改进访问者模式
8.4 改进命令模式
8.5 改进对象池模式
8.6 总结
第9章 使用C++11开发一个半同步
半异步线程池
9.1 半同步半异步线程池介绍
9.2 线程池实现的关键技术分析
9.3 同步队列
9.4 线程池
9.5 应用实例
9.6 总结
第10章 使用C++11开发一个轻量级的AOP库
10.1 AOP介绍
10.2 AOP的简单实现
10.3 轻量级的AOP框架的实现
10.4 总结
第11章 使用C++11开发一个轻量级的IoC容器
11.1 IoC容器是什么
11.2 IoC创建对象
11.3 类型擦除的常用方法
11.4 通过Any和闭包来擦除类型
11.5 创建依赖的对象
11.6 完整的IoC容器
11.7 总结
第12章 使用C++11开发一个对象
的消息总线库
12.1 消息总线介绍
12.2 消息总线关键技术
12.3 完整的消息总线
12.4 应用实例
12.5 总结
第13章 使用C++11封装sqlite库
13.1 sqlite基本用法介绍
13.2 rapidjson基本用法介绍
13.3 封装sqlite的SmartDB
13.4 应用实例
13.5 总结
第14章 使用C++11开发一个linq to objects库
14.1 LINQ介绍
14.2 C++中的LINQ
14.3 LINQ实现的关键技术
14.4 linq to objects的具体实现
14.5 linq to objects的应用实例
14.6 总结
第15章 使用C++11开发一个轻量级的并行task库
15.1 TBB的基本用法
15.2 PPL的基本用法
15.3 TBB和PPL的选择
15.4 轻量级的并行库TaskCpp的需求
15.5 TaskCpp的任务
15.6 TaskCpp任务的组合
15.7 TaskCpp并行算法
15.8 总结
第16章 使用C++11开发一个简单的通信程序
16.1 反应器和主动器模式介绍
16.2 asio中的Proactor
16.3 asio的基本用法
16.4 C++11结合asio实现一个
简单的服务端程序
16.5 C++11结合asio实现一个
简单的客户端程序
16.6 TCP粘包问题的解决
16.7 总结
参考文献
FAQ:
1.书稿费有多少?
版税按照9%算,算下来很少的,一年的时间完成这本书算是对自己近几年开发经验的一点总结吧,出书赚到这点钱真不在乎。