|
关于我们
新书资讯 新书推荐 |
C++面向对象程序设计
本书采用C++语言来讲解面向对象编程,在介绍C++语法的基础上,还引入了数据结构、设计模式等内容。全书篇章结构精良、组织有序、概念清晰,围绕教学需求展开内容,程序文档形式一致,为学生日后在学术界和专业领域承担程序设计方面的工作打好了基础。
出版者的话
译者序 前言 第1章 计算机与程序设计语言导论 1 1.1 计算机系统 1 1.1.1 计算机硬件 1 1.1.2 计算机软件 4 1.2 计算机语言 4 1.2.1 机器语言 4 1.2.2 符号语言 5 1.2.3 高级语言 5 1.3 计算机语言范式 5 1.3.1 面向过程的程序设计语言范式 6 1.3.2 面向对象的程序设计语言范式 7 1.3.3 函数式程序设计语言范式 7 1.3.4 逻辑式程序设计语言范式 8 1.3.5 C++语言中包含的范式 8 1.4 程序设计 8 1.4.1 理解问题 9 1.4.2 开发解决方案 9 1.5 程序开发 11 1.5.1 编写和编辑程序 11 1.5.2 编译程序 12 1.5.3 链接程序 12 1.5.4 执行程序 12 1.6 测试 12 1.6.1 设计测试数据 12 1.6.2 程序错误 13 本章小结 13 思考题 14 第2章 C++程序设计基础 16 2.1 C++程序 16 2.1.1 第一个程序 16 2.1.2 第二个程序 20 2.2 变量、值和常量 22 2.2.1 变量 22 2.2.2 值 22 2.2.3 常量 26 2.3 C++程序的组成部分 26 2.3.1 标记符 27 2.3.2 注释 29 2.4 数据类型 30 2.4.1 整数类型 30 2.4.2 字符类型 36 2.4.3 布尔类型 38 2.4.4 浮点类型 39 2.4.5 void类型 40 2.4.6 字符串类 41 本章小结 42 思考题 42 编程题 47 第3章 表达式和语句 48 3.1 表达式 48 3.1.1 基本表达式 49 3.1.2 一元表达式 51 3.1.3 乘法类表达式 52 3.1.4 加法类表达式 54 3.1.5 赋值表达式 55 3.1.6 左值和右值的概念 57 3.2 类型转换 57 3.2.1 隐式类型转换 58 3.2.2 显式类型转换(强制转换) 61 3.3 表达式的求值顺序 62 3.3.1 优先级 62 3.3.2 结合性 65 3.4 上溢和下溢 66 3.4.1 整数的上溢和下溢 66 3.4.2 浮点数的上溢和下溢 68 3.5 格式化数据 69 3.5.1 用于输出的操作符 69 3.5.2 用于输入的操作符 74 3.6 语句 75 3.6.1 声明语句 76 3.6.2 表达式语句 77 3.6.3 空语句 78 3.6.4 复合语句 78 3.6.5 返回语句 79 3.7 程序设计 80 3.7.1 提取浮点数的整数部分和小数部分 80 3.7.2 提取整数的个位数 82 3.7.3 把时间分解为时分秒 83 3.7.4 计算平均值和偏差 84 本章小结 86 思考题 86 编程题 90 第4章 选择结构 92 4.1 简单选择结构 92 4.1.1 关系和等性表达式 92 4.1.2 单分支选择结构:if语句 93 4.1.3 双分支选择结构:if-else语句 97 4.1.4 多分支选择结构 101 4.2 复杂条件决策 103 4.2.1 逻辑表达式 104 4.2.2 逻辑表达式的应用 105 4.3 基于特定值的选择结构 111 4.3.1 switch语句 111 4.4 条件表达式 117 4.4.1 条件表达式的结构 117 4.4.2 比较 118 4.5 程序设计 119 4.5.1 学生成绩 119 4.5.2 计算给定收入的税款 122 4.5.3 日期编号 124 本章小结 126 思考题 126 编程题 128 第5章 循环结构 130 5.1 概述 130 5.1.1 前缀表达式和后缀表达式 130 5.1.2 循环语句 132 5.2 while语句 132 5.2.1 计数器控制while语句 133 5.2.2 事件控制while语句 138 5.2.3 while语句分析 144 5.3 for语句 144 5.3.1 循环头 145 5.3.2 循环体 145 5.4 do-while语句 148 5.4.1 事件控制的循环结构 149 5.4.2 do-while循环结构的分析 151 5.5 有关循环结构的详细信息 152 5.5.1 三种循环结构的比较 152 5.5.2 嵌套循环 152 5.6 其他相关语句 155 5.6.1 return语句 155 5.6.2 break语句 157 5.6.3 continue语句 157 5.6.4 goto语句 158 5.7 程序设计 158 5.7.1 累加和与累乘积 158 5.7.2 阶乘 160 5.7.3 乘幂 162 5.7.4 最小值和最大值 164 5.7.5 any或者all查询 166 本章小结 168 思考题 169 编程题 171 第6章 函数 173 6.1 概述 173 6.1.1 函数的优点 174 6.1.2 函数的定义、声明和调用 174 6.1.3 库函数和用户自定义函数 176 6.2 库函数 177 6.2.1 数学函数 177 6.2.2 字符函数 181 6.2.3 处理时间 183 6.2.4 随机数生成 184 6.3 用户自定义函数 186 6.3.1 函数的四种类型 186 6.3.2 使用声明 192 6.4 数据交换 194 6.4.1 传递数据 195 6.4.2 返回值 199 6.4.3 综合示例 200 6.5 有关参数的进一步讨论 203 6.5.1 默认参数 203 6.5.2 函数重载 204 6.6 作用域和生命周期 206 6.6.1 作用域 206 6.6.2 生命周期 211 6.7 程序设计 213 6.7.1 固定投资的未来价值 214 6.7.2 周期性投资的未来价值 217 本章小结 221 思考题 221 编程题 224 第7章 用户自定义类型:类 227 7.1 概述 227 7.1.1 现实生活中的类型和实例 227 7.1.2 程序中的类和对象 228 7.1.3 比较 228 7.2 类 229 7.2.1 一个示例 229 7.2.2 类定义 231 7.2.3 成员函数定义 233 7.2.4 内联函数 234 7.2.5 应用程序 235 7.2.6 结构 235 7.3 构造函数和析构函数 236 7.3.1 构造函数 236 7.3.2 析构函数 238 7.3.3 创建和销毁对象 239 7.3.4 必需的成员函数 239 7.4 实例成员 245 7.4.1 实例数据成员 245 7.4.2 实例成员函数 245 7.4.3 类不变式 249 7.5 静态成员 252 7.5.1 静态数据成员 252 7.5.2 静态成员函数 253 7.6 面向对象的程序设计 259 7.6.1 独立文件 259 7.6.2 独立编译 260 7.6.3 防止多重包含 265 7.6.4 封装 265 7.7 设计类 266 7.7.1 表示分数的类 267 7.7.2 表示时间的类 272 本章小结 276 思考题 276 编程题 278 第8章 数组 281 8.1 一维数组 281 8.1.1 数组属性 281 8.1.2 声明、分配和初始化 282 8.1.3 访问数组元素 284 8.2 有关数组的进一步讨论 290 8.2.1 访问操作 290 8.2.2 修改操作 293 8.2.3 使用带数组的函数 295 8.2.4 并行数组 298 8.3 多维数组 302 8.3.1 二维数组 302 8.3.2 三维数组 306 8.4 程序设计 307 8.4.1 频率数组和直方图 307 8.4.2 线性转换 309 本章小结 312 思考题 313 编程题 314 第9章 引用、指针和内存管理 316 9.1 引用 316 9.1.1 概述 316 9.1.2 检索值 318 9.1.3 修改值 319 9.1.4 引用的应用 320 9.2 指针 325 9.2.1 地址 325 9.2.2 指针类型和指针变量 327 9.2.3 检索值 329 9.2.4 使用const修饰符 329 9.2.5 指向指针的指针 331 9.2.6 两种特殊的指针 331 9.2.7 指针的应用 332 9.3 数组和指针 336 9.3.1 一维数组和指针 336 9.3.2 二维数组和指针 342 9.4 内存管理 344 9.4.1 代码内存 344 9.4.2 静态内存 344 9.4.3 栈内存 345 9.4.4 堆内存 346 9.4.5 二维数组 349 9.5 程序设计 352 9.5.1 课程类 352 9.5.2 矩阵类 357 本章小结 362 思考题 362 编程题 366 第10章 字符串 368 10.1 C字符串 368 10.1.1 C字符串库 369 10.1.2 C字符串的操作 369 10.2 C++字符串类 381 10.2.1 总体设计思路 382 10.2.2 C++字符串库 383 10.2.3 C++字符串定义的操作 384 10.3 程序设计 402 10.3.1 四个自定义函数 402 10.3.2 数值进制编码系统的转换 404 本章小结 409 思考题 409 编程题 410 第11章 类之间的关系 412 11.1 继承关系 412 11.1.1 总体思路 412 11.1.2 公共继承 413 11.1.3 有关公共继承的进一步讨论 424 11.1.4 继承的三种类型 430 11.2 关联关系 431 11.2.1 聚合关系 432 11.2.2 组合关系 435 11.3 依赖关系 438 11.3.1 UML图 439 11.3.2 一个综合的示例 439 11.4 程序设计 443 11.4.1 词法分析器类 443 11.4.2 注册 446 本章小结 454 思考题 455 编程题 457 第12章 多态性和其他问题 460 12.1 多态性 460 12.1.1 多态性的条件 461 12.1.2 构造函数和析构函数 464 12.1.3 绑定 470 12.1.4 运行时类型信息 471 12.2 其他问题 472 12.2.1 抽象类 472 12.2.2 多重继承 482 本章小结 494 思考题 494 编程题 495 第13章 运算符重载 497 13.1 对象的三种角色 497 13.1.1 宿主对象 497 13.1.2 参数对象 499 13.1.3 返回对象 500 13.2 重载原理 501 13.2.1 运算符的三种类别 502 13.2.2 重载的规则 503 13.2.3 运算符函数 504 13.3 重载为成员函数 504 13.3.1 一元运算符 504 13.3.2 二元运算符 507 13.3.3 其他运算符 511 13.4 重载为非成员函数 517 13.4.1 二元算术运算符 517 13.4.2 等性运算符和关系运算符 518 13.4.3 提取运算符和插入运算符 519 13.5 类型转换 520 13.5.1 基本类型转换为类类型 520 13.5.2 类类型转换为基本类型 521 13.6 设计类 521 13.6.1 带重载运算符的Fraction类 521 13.6.2 Date类 530 13.6.3 多项式 536 本章小结 543 思考题 543 编程题 544 第14章 异常处理 546 14.1 概述 546 14.1.1 错误处理的传统方法 546 14.1.2 异常处理的方法 551 14.1.3 异常规范 558 14.1.4 栈展开 559 14.2 类中的异常 560 14.2.1 构造函数中的异常 561 14.2.2 析构函数中的异常 567 14.3 标准异常类 567 14.3.1 逻辑错误 568 14.3.2 运行时错误 569 14.3.3 其他五个类 570 14.3.4 使用标准异常类 571 本章小结 572 思考题 572 编程题 575 第15章 泛型编程:模板 576 15.1 函数模板 576 15.1.1 使用函数族 576 15.1.2 使用函数模板 577 15.1.3 其他函数模板版本 580 15.1.4 接口文件和应用程序文件 583 15.2 类模板 584 15.2.1 接口和实现 584 15.2.2 编译 587 15.2.3 其他问题 591 15.2.4 继承 592 15.2.5 回顾 592 本章小结 593 思考题 593 编程题 594 第16章 输入/输出流 595 16.1 概述 595 16.1.1 流 596 16.1.2 数据表示 596 16.1.3 流类 598 16.2 控制台流 599 16.2.1 控制台对象 599 16.2.2 流状态 600 16.2.3 输入/输出 602 16.3 文件流 606 16.3.1 文件输入/输出 606 16.3.2 文件打开模式 609 16.3.3 其他成员函数 614 16.3.4 顺序访问与随机访问 616 16.3.5 二进制输入/输出 619 16.4 字符串流 625 16.4.1 实例化 626 16.4.2 应用:适配器 627 16.5 格式化数据 629 16.5.1 直接使用标志、字段和变量 629 16.5.2 预定义操作符 632 16.5.3 操作符定义 634 16.6 程序设计 638 16.6.1 合并两个已排序文件 638 16.6.2 对称密码 640 本章小结 644 思考题 645 编程题 645 第17章 递归 647 17.1 概述 647 17.1.1 循环与递归 647 17.1.2 递归算法 649 17.1.3 尾部递归函数和非尾部递归函数 657 17.1.4 辅助函数 658 17.2 递归排序和查找 660 17.2.1 快速排序 660 17.2.2 二分查找法 664 17.2.3 汉诺塔 667 17.3 程序设计 670 17.3.1 字符串排列 670 17.3.2 素数 672 本章小结 675 思考题 675 编程题 677 在线章节 第18章数据结构入门 第19章标准模板库 第20章设计模式 附录AUnicode 附录B进制编码系统 附录CC++表达式和运算符 附录D位运算 附录E位域 附录F预处理 附录G名称空间 附录H比率 附录I时间 附录JLambda表达式 附录K正则表达式 附录L智能指针 附录M随机数生成 附录N引用 附录O移动与复制 附录PC++11概述 附录Q统一建模语言 附录R位集
你还可能感兴趣
我要评论
|

新书资讯




