当前位置:首页 > 工业技术
C++大学教程  第9版
C++大学教程  第9版

C++大学教程 第9版PDF电子书下载

工业技术

  • 电子书积分:21 积分如何计算积分?
  • 作 者:(美)保罗·戴特尔(Paul Deitel),哈维·戴特尔(Harvey Deitel)
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2016
  • ISBN:9787121290015
  • 页数:758 页
图书介绍:本书是一本C++编程方面的优秀教程,全面地介绍了过程式编程与面向对象编程的原理和方法,细致地分析了各种性能问题、移植性问题和可能出错的地方,介绍了如何提高软件工程质量,并提供了丰富的自测练习和项目练习。可以说本书是非常好的学习C++语言的教程之一,是学习C++的”宝典”。
《C++大学教程 第9版》目录
标签:教程 大学

第1章 计算机和C++简介 1

1.1 简介 2

1.2 计算机和互联网在工业和研究领域中的应用 2

1.3 硬件和软件 3

1.4 数据的层次结构 5

1.5 机器语言、汇编语言和高级语言 6

1.6 C++ 7

1.7 程序设计语言 8

1.8 对象技术介绍 9

1.9 典型的C++程序开发环境 11

1.10 试运行一个C++应用程序 13

1.11 操作系统 18

1.12 互联网和万维网 19

1.13 软件开发的一些关键术语 21

1.14 C++11和开源的Boost库 22

1.15 与信息技术与时俱进 22

1.16 Web资源 23

第2章 C++编程入门、输入/输出和运算符 27

2.1 简介 28

2.2 第一个C++程序:输出一行文本 28

2.3 修改第一个C++程序 31

2.4 另一个C++程序:整数相加 31

2.5 内存的概念 35

2.6 算术运算 35

2.7 判断:相等运算符和关系运算符 38

2.8 本章小结 41

第3章 类、对象和字符串的介绍 49

3.1 简介 50

3.2 定义具有成员函数的类 50

3.3 定义具有形参的成员函数 52

3.4 数据成员、set成员函数和get成员函数 54

3.5 使用构造函数初始化对象 59

3.6 一个类对应一个独立文件的可复用性 61

3.7 接口与实现的分离 64

3.8 用set函数确认数据的有效性 68

3.9 本章小结 71

第4章 控制语句(第Ⅰ部分)、赋值、自增和自减运算符 77

4.1 简介 78

4.2 算法 78

4.3 伪代码 78

4.4 控制结构 79

4.5 if选择语句 81

4.6 if...else双路选择语句 82

4.7 while循环语句 86

4.8 算法详述:计数器控制的循环 87

4.9 算法详述:标记控制的循环 92

4.10 算法详述:嵌套的控制语句 99

4.11 赋值运算符 103

4.12 自增和自减运算符 104

4.13 本章小结 106

第5章 控制语句(第Ⅱ部分)和逻辑运算符 117

5.1 简介 118

5.2 计数器控制的循环的要素 118

5.3 for循环语句 119

5.4 使用for语句的例子 122

5.5 do...while循环语句 125

5.6 switch多路选择语句 126

5.7 break和continue语句 133

5.8 逻辑运算符 134

5.9 ==运算符与=运算符的混淆问题 137

5.10 结构化编程小结 138

5.11 本章小结 142

第6章 函数和递归入门 150

6.1 简介 151

6.2 C++的程序组件 151

6.3 数学库函数 152

6.4 具有多个形参的函数定义 153

6.5 函数原型和实参类型的强制转换 156

6.6 C++标准库头文件 158

6.7 实例研究:随机数生成 159

6.8 实例研究:博彩游戏和枚举类型简介 163

6.9 C++11的随机数 166

6.10 存储类别和存储期 167

6.11 作用域规则 169

6.12 函数调用堆栈和活动记录 172

6.13 无形参的函数 175

6.14 内联函数 175

6.15 引用和引用形参 176

6.16 默认实参 178

6.17 一元的作用域分辨运算符 179

6.18 函数重载 180

6.19 函数模板 182

6.20 递归 184

6.21 递归应用示例:Fibonacci(斐波那契)数列 187

6.22 递归与迭代 189

6.23 本章小结 191

第7章 类模板array和vector、异常捕获 208

7.1 简介 209

7.2 array对象 209

7.3 array对象的声明 210

7.4 使用array对象的例子 210

7.5 基于范围的for语句 219

7.6 实例研究:利用array对象存放成绩的GradeBook类 221

7.7 array对象的排序与查找 226

7.8 多维array对象 227

7.9 实例研究:利用二维array对象的GradeBook类 229

7.10 C++标准库类模板vector的介绍 234

7.11 本章小结 238

第8章 指针 251

8.1 简介 252

8.2 指针变量的声明和初始化 252

8.3 指针运算符 253

8.4 使用指针的按引用传递方式 255

8.5 内置数组 258

8.6 使用const修饰指针 260

8.7 sizeof运算符 263

8.8 指针表达式和指针算术运算 264

8.9 指针和内置数组之间的关系 266

8.10 基于指针的字符串 268

8.11 本章小结 270

第9章 类的深入剖析:抛出异常 283

9.1 简介 284

9.2 Time类实例研究 284

9.3 类的作用域和类成员的访问 289

9.4 访问函数和工具函数 290

9.5 Time类实例研究:具有默认实参的构造函数 290

9.6 析构函数 295

9.7 何时调用构造函数和析构函数 295

9.8 Time类实例研究:微妙的陷阱——返回private数据成员的引用或指针 297

9.9 默认的逐个成员赋值 299

9.10 const对象和const成员函数 301

9.11 组成:对象作为类的成员 302

9.12 friend函数和friend类 307

9.13 使用this指针 308

9.14 static类成员 313

9.15 本章小结 316

第10章 运算符重载:string类 325

10.1 简介 326

10.2 使用标准库中string类的重载运算符 326

10.3 运算符重载的基础知识 328

10.4 重载二元运算符 329

10.5 重载二元流插入运算符和流提取运算符 330

10.6 重载一元运算符 333

10.7 重载一元前置与后置运算符:++和-- 333

10.8 实例研究:Date类 334

10.9 动态内存管理 338

10.10 实例研究:Array类 340

10.11 运算符作为成员函数和非成员函数的比较 349

10.12 类型转换 349

10.13 explicit构造函数与转换运算符 350

10.14 重载函数调用运算符() 352

10.15 本章小结 353

第11章 面向对象编程:继承 362

11.1 简介 363

11.2 基类和派生类 363

11.3 基类和派生类之间的关系 365

11.4 派生类中的构造函数和析构函数 381

11.5 public、protected和private继承 383

11.6 继承与软件工程 383

11.7 本章小结 384

第12章 面向对象编程:多态性 388

12.1 简介 389

12.2 多态性介绍:多态视频游戏 389

12.3 类继承层次中对象之间的关系 390

12.4 类型域和switch语句 399

12.5 抽象类和纯virtual函数 400

12.6 实例研究:应用多态性的工资发放系统 401

12.7 (选读)多态性、virtual函数和动态绑定的底层实现机制 411

12.8 实例研究:应用向下强制类型转换、dynamic_cast、typeid和type_info并使用多态性和运行时类型信息的工资发放系统 414

12.9 本章小结 416

第13章 输入/输出流的深入剖析 421

13.1 简介 422

13.2 流 422

13.3 输出流 425

13.4 输入流 426

13.5 使用read、write和gcount的非格式化的I/O 428

13.6 流操作符简介 429

13.7 流的格式状态和流操作符 433

13.8 流的错误状态 439

13.9 将输出流连接到输入流 441

13.10 本章小结 441

第14章 文件处理 449

14.1 简介 450

14.2 文件和流 450

14.3 创建顺序文件 451

14.4 从顺序文件读取数据 453

14.5 更新顺序文件 457

14.6 随机存取文件 458

14.7 创建随机存取文件 458

14.8 向随机存取文件随机写入数据 462

14.9 从随机存取文件顺序读取数据 463

14.10 实例研究:事务处理程序 465

14.11 对象序列化 469

14.12 本章小结 470

第15章 标准库的容器和迭代器 478

15.1 标准模板库(STL)简介 479

15.2 容器简介 480

15.3 迭代器简介 482

15.4 算法简介 485

15.5 序列容器 486

15.6 关联容器 496

15.7 容器适配器 502

15.8 bitset类 506

15.9 本章小结 507

第16章 标准库算法 516

16.1 简介 516

16.2 对迭代器的最低要求 517

16.3 算法 518

16.4 函数对象 542

16.5 lambda表达式 544

16.6 标准库算法总结 545

16.7 本章小结 546

第17章 异常处理深入剖析 552

17.1 简介 552

17.2 实例:处理除数为0的异常处理 553

17.3 重新抛出异常 557

17.4 堆栈展开 558

17.5 什么时候使用异常处理 559

17.6 构造函数、析构函数和异常处理 560

17.7 异常与继承 561

17.8 处理new失败 561

17.9 类uique_ptr和动态内存分配 563

17.10 标准库的异常类层次结构 565

17.11 本章小结 566

第18章 自定义模板的介绍 571

18.1 简介 571

18.2 类模板 571

18.3 使用函数模板来操作类模板特化的对象 575

18.4 非类型形参 576

18.5 模板类型形参的默认实参 577

18.6 重载函数模板 577

18.7 本章小结 577

第19章 自定义的模板化数据结构 580

19.1 简介 580

19.2 自引用类 581

19.3 链表 582

19.4 堆栈 592

19.5 队列 595

19.6 树 598

19.7 本章小结 603

第20章 查找与排序 612

20.1 简介 612

20.2 查找算法 613

20.3 排序算法 619

20.4 本章小结 627

第21章 string类和字符串流处理的深入剖析 632

21.1 简介 632

21.2 字符串的赋值和连接 633

21.3 字符串的比较 635

21.4 子串 637

21.5 交换字符串 637

21.6 string类的特征 638

21.7 查找字符串中的子串和字符 639

21.8 在字符串中替换字符 641

21.9 在字符串中插入字符 642

21.10 转换成C风格的基于指针的char*字符串 643

21.11 迭代器 644

21.12 字符串流处理 645

21.13 C++11数值转换函数 647

21.14 本章小结 648

第22章 位、字符、C字符串和结构体 654

22.1 简介 654

22.2 结构体的定义 655

22.3 typedef 656

22.4 示例:洗牌和发牌模拟 656

22.5 位运算符 658

22.6 位域 664

22.7 字符处理库 666

22.8 C字符串操作函数 670

22.9 C字符串转换函数 675

22.10 C字符串操作库中的搜索函数 678

22.11 C字符串操作库中的内存函数 681

22.12 本章小结 684

第23章 其他主题 696

23.1 简介 696

23.2 const cast运算符 697

23.3 mutable类成员 698

23.4 命名空间 699

23.5 运算符关键字 702

23.6 指向类成员的指针(.*和->*) 703

23.7 多重继承 705

23.8 多重继承和virtual基类 708

23.9 本章小结 711

附录A 运算符的优先级与结合律 715

附录B ASCII字符集 717

附录C 基本数据类型 718

附录D 计数系统 719

附录E 预处理器 728

索引 736

相关图书
作者其它书籍
返回顶部