本书通过实例讲述如何使用标准C++进行软件工程设计。你喜欢解决棘手的C++问题和疑惑吗?喜欢编写健壮的和可扩展的代码吗?那么可以花点儿时间来研究一些费力的C++设计和编程问题。书中讲述的疑惑和问题不仅仅会使你感兴趣,而且还会帮助你成为一名优秀的C++程序员。书中的很多问题都来自于Internet新闻组comp.lang.C++.moderated和GotW特性,并且遵照官方的ISO/ANSI C++标准进行扩展和更新。
本书通过实例讲述如何使用标准C++进行软件工程设计。你喜欢解决棘手的C++问题和疑惑吗?喜欢编写健壮的和可扩展的代码吗?那么可以花点儿时间来研究一些费力的C++设计和编程问题。
本书中讲述的疑惑和问题不仅仅会使你感兴趣,而且还会帮助你成为一名优秀的C++程序员。书中的很多问题都来自于Internet新闻组comp.lang.C++.moderated和GotW特性,并且遵照官方的ISO/ANSI C++标准进行扩展和更新。
序
前言
第1章 泛型程序设计与C++标准库
第1条:迭代器(难度:7)
第2条:不区分大小写的字符串——之一(难度:7)
第3条:不区分大小写的字符串——之二(难度:5)
第4条:最大可重用的泛型容器——之一(难度:8)
第5条:最大可重用的泛型容器——之二(难度:6)
第6条:临时对象(难度:5)
第7条:使用标准库(或称再谈临时对象)(难度:5)
第2章 异常安全性问题与技术
第8条:编写异常安全的代码一之一(难度:7)
第9条:编写异常安全的代码——之二(难度:8)
第10条:编写异常安全的代码——之三(难度:9 1/2)
第11条:编写异常安全的代码一之四(难度:8)
第12条:编写异常安全的代码一之五(难度:7)
第13条:编写异常安全的代码一之六(难度:9)
第14条:编写异常安全的代码——之七(难度:5)
第15条:编写异常安全的代码一之八(难度:9)
第16条:编写异常安全的代码——之九(难度:8)
第17条:编写异常安全的代码——之十(难度:9 1/2)
第18条:代码复杂性——之一(难度:9)
第19条:代码复杂性——之二(难度:7)
第3章 类的设计与继承
第20条:类机制(难度:7)
第2l条:重载虚函数(难度:6)
第22条:类的关系——之一(难度:5)
第23条:类的关系——之二(难度:6)
第24条:继承的使用和滥用(难度:6)
第25条:面向对象程序设计(难度:4)
第4章 编译器防火墙和PimpI习惯用法
第26条:将编译期依存性减至最小——之一(难度:4)
第27条:将编译期依存性减至最小——之二(难度:6)
第28条:将编译期依存性减至最小——之三(难度:7)
第29条:编译防火墙(难度:6)
第30条:“Fast Pimpl习惯用法(难度:6)
第5章 名字查找、名字空间和接口规则
第31条:名字查找和接口规则——之一(难度:91/2)
第32条:名字查找和接口规则——之二(难度:91/2)
第33条:名字查找和接口规则——之三(难度:5)
第34条:名字查找和接口规则——之四(难度:9)
第6章 内存管理
第35条:内存管理——之一(难度:3)
第36条:内存管理——之二(难度:6)
第37条:auto_ptr(难度:8)
第7章 缺陷、陷阱和错误习惯用法
第38条:对象标识(难度:5)
第39条:自动转换(难度:4)
第40条:对象生存期——之一(难度:5)
第41条:对象生存期——之二(难度:6)
第8章 其他主题
第42条:变量初始化(难度:3)
第43条:正确使用const(难度:3)
第44条:类型转换(难度:6)
第45条:bool(难度:7)
第46条:转移调用函数(难度:3)
第47条:控制流(难度:6)
后记
参考文献
索引