文件名称:C++语言程序设计(第3版)著 译 者:郑莉 董渊 张瑞丰
文件大小:41.45MB
文件格式:PDF
更新时间:2014-12-28 14:53:22
C++语言程序设计 (第3版) 郑莉 程序设计 C++
书籍目录: 第1章 绪论 . 1 1.1 计算机程序设计语言的发展 1 1.1.1 机器语言与汇编语言 1 1.1.2 高级语言 2 1.1.3 面向对象的语言 2 1.2 面向对象的方法 2 1.2.1 面向对象方法的由来 3 1.2.2 面向对象的基本概念 4 1.3 面向对象的软件开发 5 1.3.1 分析 5 1.3.2 设计 5 1.3.3 编程 6 1.3.4 测试 6 1.3.5 维护 6 1.4 信息的表示与存储 6 1.4.1 计算机的数字系统 7 1.4.2 几种进位记数制之间的转换 8 1.4.3 信息的存储单位 10 1.4.4 二进制数的编码表示 11 1.4.5 定点数和浮点数 14 .1.4.6 数的表示范围 15 1.4.7 非数值信息的表示 16 1.5 程序的开发过程 16 1.5.1 基本术语 16 1.5.2 程序的开发过程 17 1.6 小结 18 习题 18 第2章 C++简单程序设计 19 2.1 C++语言概述 19 2.1.1 C++的产生 19 2.1.2 C++的特点 19 2.1.3 C++程序实例 20 2.1.4 字符集 21 2.1.5 词法记号 22 2.2 基本数据类型和表达式 23 2.2.1 基本数据类型 24 2.2.2 常量 24 2.2.3 变量 26 2.2.4 符号常量 27 2.2.5 运算符与表达式 28 2.2.6 语句36 2.3 数据的输入与输出 36 2.3.1 I/O流 36 2.3.2 预定义的插入符和提取符 36 2.3.3 简单的I/O格式控制 37 2.4 算法的基本控制结构 38 2.4.1 用if语句实现选择结构 39 2.4.2 多重选择结构 40 2.4.3 循环结构 43 2.4.4 循环结构与选择结构的嵌套 48 2.4.5 其他控制语句 50 2.5 自定义数据类型 51 2.5.1 typedef 声明 51 2.5.2 枚举类型——enum 51 2.5.3 结构体 53 2.5.4 联合体 55 2.6小结 57 习题 58 第3章 函数 62 3.1 函数的定义与使用 62 3.1.1 函数的定义 62 3.1.2 函数的调用 63 3.1.3 函数的参数传递 75 3.2 内联函数 79 3.3 带默认形参值的函数 80 3.4 函数重载 82 3.5 使用C++系统函数 85 3.6 小结 87 习题 87 第4章 类与对象 90 4.1 面向对象程序设计的基本特点90 4.1.1 抽象90 4.1.2 封装91 4.1.3 继承92 4.1.4 多态92 4.2 类和对象92 4.2.1 类的声明93 4.2.2 类成员的访问控制94 4.2.3 类的成员函数95 4.2.4 对象97 4.2.5 程序实例97 4.3 构造函数和析构函数98 4.3.1 构造函数99 4.3.2 拷贝构造函数101 4.3.3 析构函数104 4.3.4 程序实例105 4.4 类的组合107 4.4.1 组合107 4.4.2 前向引用声明111 4.5 UML图形标识113 4.5.1 UML简介113 4.5.2 UML类图114 4.6 程序实例——人员信息管理程序119 4.6.1 类的设计119 4.6.2 源程序及说明120 4.6.3 运行结果与分析122 4.7 小结123 习题123 第5章 C++程序的结构125 5.1 标识符的作用域与可见性125 5.1.1 作用域125 5.1.2 可见性127 5.2 对象的生存期127 5.2.1 静态生存期128 5.2.2 动态生存期128 5.3 类的静态成员130 5.3.1 静态数据成员131 5.3.2 静态函数成员133 5.4 类的友元135 5.4.1 友元函数137 5.4.2 友元类138 5.5 共享数据的保护140 5.5.1 常引用140 5.5.2 常对象140 5.5.3 用const修饰的类成员141 5.6 多文件结构和编译预处理命令144 5.6.1 C++程序的一般组织结构144 5.6.2 外部变量与外部函数146 5.6.3 标准C++库和命名空间147 5.6.4 编译预处理148 5.7 程序实例——人员信息管理程序151 5.8 小结154 习题155 第6章 数组、指针与字符串157 6.1 数组157 6.1.1 数组的声明与使用157 6.1.2 数组的存储与初始化159 6.1.3 数组作为函数参数161 6.1.4 对象数组163 6.1.5 程序实例165 6.2 指针168 6.2.1 内存空间的访问方式168 6.2.2 指针变量的声明169 6.2.3 与地址相关的运算——“*”和“&”170 6.2.4 指针的赋值170 6.2.5 指针运算173 6.2.6 用指针处理数组元素174 6.2.7 指针数组175 6.2.8 用指针作为函数参数177 6.2.9 指针型函数..179 6.2.10 指向函数的指针179 6.2.11 对象指针181 6.3 动态内存分配186 6.3.1 new运算和delete运算186 6.3.2 动态内存分配与释放函数191 6.4 深拷贝与浅拷贝191 6.5 字符串195 6.5.1 用字符数组存储和处理字符串195 6.5.2 string类198 6.6 程序实例——人员信息管理程序200 6.7 小结204 习题204 第7章 继承与派生207 7.1 类的继承与派生207 7.1.1 继承与派生的实例207 7.1.2 派生类的定义209 7.1.3 派生类生成过程210 7.2 访问控制212 7.2.1 公有继承212 7.2.2 私有继承214 7.2.3 保护继承216 7.3 类型兼容规则218 7.4 派生类的构造和析构函数221 7.4.1 构造函数221 7.4.2 拷贝构造函数224 7.4.3 析构函数224 7.5 派生类成员的标识与访问226 7.5.1 作用域分辨226 7.5.2 虚基类231 7.5.3 虚基类及其派生类构造函数234 7.6 程序实例——用高斯消去法解线性方程组235 7.6.1 算法基本原理235 7.6.2 程序设计分析236 7.6.3 源程序及说明237 7.6.4 运行结果与分析242 7.7 程序实例——人员信息管理程序243 7.7.1 问题的提出243 7.7.2 类设计243 7.7.3 源程序及说明244 7.7.4 运行结果与分析249 7.8 小结250 习题251 第8章 多态性252 8.1 多态性概述252 8.1.1 多态的类型252 8.1.2 多态的实现252 8.2 运算符重载253 8.2.1 运算符重载的规则254 8.2.2 运算符重载为成员函数255 8.2.3 运算符重载为友元函数259 8.3 虚函数261 8.3.1 一般虚函数成员262 8.3.2 虚析构函数265 8.4 抽象类266 8.4.1 纯虚函数266 8.4.2 抽象类267 8.5 程序实例——用变步长梯形积分算法求解函数的定积分269 8.5.1 算法基本原理269 8.5.2 程序设计分析271 8.5.3 源程序及说明272 8.5.4 运行结果与分析274 8.6 程序实例——人员信息管理程序274 8.7 小结280 习题281 第9章 群体类和群体数据的组织283 9.1 函数模板与类模板284 9.1.1 函数模板284 9.1.2 类模板287 9.2 线性群体290 9.2.1 线性群体的概念290 9.2.2 直接访问群体——数组类291 9.2.3 顺序访问群体——链表类301 9.2.4 栈类307 9.2.5 队列类313 9.3 群体数据的组织316 9.3.1 插入排序316 9.3.2 选择排序317 9.3.3 交换排序319 9.3.4 顺序查找320 9.3.5 折半查找321 9.4 程序实例——人员信息管理程序322 9.5 小结323 习题324 第10章 泛型程序设计与C++标准模板库326 10.1 泛型程序设计的概念和术语326 10.1.1 泛型程序设计326 10.1.2 命名空间的概念327 10.1.3 头文件命名规则329 10.1.4 标准模板库相关概念和术语330 10.2 C++标准模板库中的容器331 10.2.1 顺序容器332 10.2.2 容器适配器341 10.3 迭代器343 10.3.1 迭代器的类型344 10.3.2 迭代器相关的辅助函数345 10.4 标准C++库中的算法347 10.4.1 STL通用算法调用形式348 10.4.2 不可变序列算法349 10.4.3 可变序列算法352 10.4.4 排序相关算法355 10.4.5 数值算法360 10.5 函数对象361 10.6 程序实例——人员信息管理程序364 10.7 小结366 习题366 第11章 流类库与输入/输出369 11.1 I/O流的概念及流类库结构369 11.2 输出流372 11.2.1 构造输出流对象372 11.2.2 使用插入运算符和操纵符373 11.2.3 输出文件流成员函数377 11.2.4 二进制输出文件379 11.3 输入流380 11.3.1 构造输入流对象380 11.3.2 使用提取运算符381 11.3.3 输入流操纵符381 11.3.4 输入流成员函数381 11.4 输入/输出流385 11.5 程序实例——人员信息管理程序385 11.6 小结387 习题388 第12章 异常处理390 12.1 异常处理的基本思想390 12.2 C++异常处理的实现390 12.2.1 异常处理的语法391 12.2.2 异常接口声明393 12.3 异常处理中的构造与析构394 12.4 标准程序库异常处理396 12.5 程序实例——人员信息管理程序396 12.6 小结399 习题399 第13章 MFC库与Windows程序开发概述400 13.1 Windows的编程模式400 13.2 MFC库简介402 13.2.1 应用程序框架402 13.2.2 MFC类层次403 13.2.3 MFC类功能简介403 13.3 使用Visual C++开发Windows程序的步骤407 13.4 综合实例——人员信息管理程序409 13.5 小结414 习题414 参考文献...415