本书通过指导读者创建并逐步丰富完善一个成果,全面介绍了C++程序设计的方法和技巧。无论是对于初学C++的人,还是应用C++的高手都具有较高的实用价值。
第1章 C++ 导论\r\n\r\n程序\r\n解决问题\r\n过程化、结构化和面向对象编程\r\n什么是C++ ?\r\n为什么需要面向对象编程?\r\n对付复杂性\r\n对象\r\n压缩\r\n衍生\r\n特殊性\r\n普遍性和多样性\r\n三个支柱\r\n如何进行面向对象分析和设计\r\n小项目的面向对象分析和设计\r\n想象力\r\nDecryptix!想象力\r\n想象\r\n需求分析\r\n快而乱的设计\r\n实施\r\n程序和源代码\r\n编译器\r\n你的开发环境\r\n文本编辑\r\n编译源代码\r\n使用连接器建立可执行文件\r\n开发周期\r\n编译错误\r\n发布\r\n下一步\r\n\r\n第2章 开始\r\n\r\n小项目有多大?\r\n为什么小项目是唯一好的教程\r\n依靠你的知识\r\n创建项目\r\n分析代码\r\n名字空间\r\nusing namespace std \r\n代码调试\r\n返回一个值\r\nmain()进一步的意义\r\n使用cout打印到屏幕\r\n特殊打印字符\r\n<<end1;\r\n变量\r\n变量类型\r\n定义变量\r\n区分大小写\r\n关键字\r\n一次建立多个变量\r\n指定变量值\r\n作用域\r\n字符与数字\r\n整整长度\r\n使用整数变量\r\n有符号位和无符号位\r\n循环无符号整数\r\n循环有符号整数\r\n常量\r\n字母型常量\r\n符号型常量\r\n用#define定义常量\r\n用const定义常量\r\n\r\n第3章 程序流\r\n\r\n建立健壮性\r\n你谋略完成什么?\r\n块和复合语句\r\n逻辑运算符\r\n逻辑或运算符\r\n逻辑与运算符\r\nif语句\r\n逻辑非运算符\r\n快捷评估\r\n关系优先\r\n混合使用\r\ndo while\r\n枚举常量\r\n返回代码\r\n来自用户的布尔应答\r\n等于运算符\r\nelse\r\n条件(或三元)运算符\r\n综合\r\n\r\n第4章 建立类\r\n\r\n类是什么?\r\n建立要新的类型:类\r\n界面与工具\r\n客户\r\n查看代码\r\n声明类\r\n类和对象\r\n成员变量\r\n成员方法或函数\r\n对象的长度\r\n文件\r\n构造符\r\n解除符\r\n实现方法\r\n包含头\r\n实现构造符\r\n初始化\r\n使用调试器\r\n查看构造符\r\n其他方法\r\n什么是数组?\r\n数组初始化\r\nC风格字符串\r\n数组元素\r\n超出数组结尾的写入\r\n电子写入错误\r\n生成方案\r\n查看定义值错误\r\n生成方案\r\n查看定义值文件\r\n\r\n第5章 玩游戏\r\n\r\ninline实现\r\n常量成员方法\r\n签名\r\n引用传递和数值传递\r\n分析\r\n分析\r\n引用和通过引用传递\r\n指针\r\n指针是什么?\r\n存储器寻址\r\n间接引用\r\n直接得到运算符\r\n数组\r\n指针与常量\r\n数组作为指针\r\n数组作为指针传递\r\n使用断言\r\n断言如何工作\r\n宏\r\n为什么使用圆括号?\r\n宏与函数比较\r\n字符串操作\r\n井号\r\n连接\r\n预定义宏\r\n连接\r\n预定义宏\r\n通过数值一次通过程序\r\n\r\n第6章 使用连接列表\r\n\r\n动态数据结构\r\n标准模板库\r\n连接列表\r\n了解连接列表\r\n简单的驱动程序\r\nhowmany()方法\r\n详述insert()\r\n了解栈\r\n栈与函数\r\n使用new\r\nnew 和delete\r\n在decryptix!使用简单的连接列表\r\n运行\r\n玩游戏\r\n用成员方法解决问题\r\n运算符重载\r\n完成运算符重载\r\n通过数值传递\r\n为什么引用?\r\n\r\n第7章 典型方法\r\n\r\n方法重载\r\n形类\r\n重载构造符\r\nmiranda方法\r\n缺省构造符\r\n何时可得到编译器提供的构造符?\r\n缺省解除符\r\n拷贝构造符\r\n缺省拷贝构造符为什么无效?\r\n写自己拥有的拷贝构造符\r\n赋值运算符\r\n何时类似赋值而何时又不类似\r\n回到连接列表\r\n\r\n第8章 使用多态性\r\n\r\n\r\n特殊性\r\n特殊性的优越性\r\n多态性\r\n抽象数据类型\r\nC++如何实现这些类\r\n继承性语法\r\n替换函数\r\n虚拟方法\r\n虚拟函数\r\n虚拟取消器\r\n实现多态性\r\n增加第二个[字母\r\n\r\n第9章 实现模板\r\n\r\n创建历史\r\n加载的操作符\r\n向cout中写类数据\r\n友函数\r\n头文件中的定义\r\n首先创建非参数化类型\r\n模板实例化\r\n使用历史对象\r\n使用历史\r\n立即实现\r\n\r\n第10章 使用标准板库\r\n\r\n将代码转换为STL\r\n集合类\r\n使用向量\r\n为什么一个字符向量不是一个串?\r\n检查输出\r\n初邕化Game\r\nPlay()方法\r\n显示一个向量的内容\r\n对Guess评分\r\n创建历史\r\nShowHistory()\r\n检查提示\r\n\r\n第11章 计算机猜测\r\n\r\n允许计算机学会猜测\r\n查找规律\r\n解码类\r\n游戏实现\r\n无限循环\r\n游戏者猜测\r\n游戏者如何玩游戏\r\n计算机猜测\r\n跳至VerifyComputerChoices()\r\n创建Computer对象\r\n\r\n第12章 分配职责\r\n\r\n分配职责\r\n分析\r\n理解缺省参数\r\n仔细分析SmartChar\r\n监视其工作\r\nComputer运行\r\n创建一个聪明的字符串\r\nComputer::Play\r\n生成Guesses:回顾\r\n猜测一致否?\r\n产生一个猜测,详解\r\nCanElminateCharacters的逻辑\r\nCanElminateCharacters细节\r\nGenerateAGuess\r\nIsConsistent的细节\r\n静态成员变量\r\n静态效果\r\n继续分析\r\n删除在位字符\r\n\r\n第13章 持久性\r\n\r\n持久性\r\n对象的持久性\r\n保存的不同方式\r\n设计持久性\r\nReader和Writer\r\n用户接口问题\r\n编写游戏\r\n一步步编写游戏\r\n写多态对象\r\n\r\n第14章 异常处理\r\n\r\n当异常发生时\r\n退栈
从磁盘读取对象\r\n恢复human\r\n\r\n第15章 下一步\r\n\r\n下一步\r\n读另一本启蒙书\r\n支持新闻组\r\n保持联系\r\n\r\n附录A\r\n\r\n附录B