图书介绍

21天学通C++ 第5版【2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载】

21天学通C++ 第5版
  • (美)Jesse Liberty,(美)Bradley Jones著;李佩乾,杨小珂译 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:7115136920
  • 出版时间:2005
  • 标注页数:634页
  • 文件大小:24MB
  • 文件页数:649页
  • 主题词:C语言-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

21天学通C++ 第5版PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 绪论2

1.1 C++简史2

目录2

第1周课程简介2

1.1.2 过程化编程、结构化编程和面向对象编程3

1.1.1 解决问题3

1.1.4 C++和面向对象编程4

1.1.3 面向对象编程(OOP)4

1.6 ANSI标准5

1.5 微软的C++可控扩展5

1.2 C++的发展历程5

1.3 应该先学习C语言吗5

1.4 C++、Java和C5

1.8 开发环境6

1.7 编程准备6

1.10 程序开发周期7

1.9.2 用链接器生成可执行文件7

1.9 创建程序的步骤7

1.9.1 用编译器生成对象文件7

1.11 HELLO.cpp:第一个C++程序8

1.12 编译器初步9

1.15 问与答10

1.14 小结10

1.13 编译错误10

1.16.2 练习11

1.16.1 测验11

1.16 作业11

2.1 一个简单程序12

第2章 C++程序的组成部分12

2.2 cout简介13

2.3 使用标准名称空间15

2.4 对程序进行注释16

2.4.2 使用注释17

2.4.1 注释的类型17

2.5 函数18

2.4.3 有关注释的警告18

2.5.1 使用函数19

2.7 问与答20

2.6 小结20

2.5.2 方法和函数20

2.8.2 练习21

2.8.1 测验21

2.8 作业21

3.1.2 预留内存22

3.1.1 将数据存储在内存中22

第3章 使用变量和常量22

3.1 什么是变量22

3.1.3 整型变量的大小23

3.1.4 基本变量类型24

3.2 定义变量25

3.2.3 关键字26

3.2.2 命名规则26

3.2.1 区分大小写26

3.4 给变量赋值27

3.3 一次创建多个变量27

3.5 使用typedef来创建别名28

3.6 何时使用short和long29

3.6.2 signed整型变量的回绕30

3.6.1 unsigned整型变量的回绕30

3.7 使用字符31

3.7.2 特殊打印字符32

3.7.1 字符和数字32

3.8.2 符号常量33

3.8.1 字面常量33

3.8 常量33

3.9 枚举常量34

3.11 问与答36

3.10 小结36

3.12.2 练习37

3.12.1 测验37

3.12 作业37

4.1.2 语句块和复合语句38

4.1.1 使用空白38

第4章 创建表达式和语句38

4.1 语句简介38

4.2 表达式39

4.3.2 数学运算符40

4.3.1 赋值运算符40

4.3 使用运算符40

4.3.3 整数除法和求模41

4.5 递增和递减42

4.4 赋值运算符与数学运算符的组合42

4.6 理解运算符优先级44

4.8 真值的本质45

4.7 括号的嵌套45

4.9 if语句46

4.9.2 else语句49

4.9.1 缩进风格49

4.9.3 高级if语句51

4.10 在嵌套if语句中使用大括号52

4.11.1 逻辑AND运算符54

4.11 使用逻辑运算符54

4.13 关系运算符的优先级55

4.12 简化求值55

4.11.2 逻辑OR运算符55

4.11.3 逻辑NOT运算符55

4.15 条件运算符(三目运算符)56

4.14 再谈真和假56

4.16 小结57

4.18.1 测验58

4.18 作业58

4.17 问与答58

4.18.2 练习59

5.1 什么是函数60

第5章 组织成函数60

5.3 声明和定义函数61

5.2 返回值、参数和实参61

5.3.2 定义函数62

5.3.1 函数原型62

5.5.1 局部变量64

5.5 确定变量的作用域64

5.4 函数的执行64

5.5.2 作用域为语句块的局部变量65

5.6 参数是局部变量66

5.6.1 全局变量67

5.8 再谈函数实参69

5.7 创建函数语句时的考虑因素69

5.6.2 有关全局变量的注意事项69

5.9 再谈返回值70

5.10 默认参数71

5.11 重载函数73

5.12.1 内联函数76

5.12 函数特有的主题76

5.12.2 递归77

5.13.2 划分RAM81

5.13.1 抽象层次81

5.13 函数的工作原理81

5.15 问与答83

5.14 小结83

5.13.3 堆栈和函数83

5.16.2 练习84

5.16.1 测验84

5.16 作业84

6.2 创建新类型86

6.1 C++是面向对象的吗86

第6章 理解面向对象编程86

6.3 类和成员简介87

6.3.4 类与对象88

6.3.3 定义对象88

6.3.1 声明类88

6.3.2 有关命名规则的说明88

6.4.2 类不能有没有声明的功能89

6.4.1 给对象而不是类赋值89

6.4 访问类成员89

6.5 私有和公有90

6.6 实现类方法94

6.7.2 使用默认构造函数96

6.7.1 默认构造函数和析构函数96

6.7 添加构造函数和析构函数96

6.9 接口与实现99

6.8 const成员函数99

6.10 将类声明和方法定义放在什么地方101

6.11 内联实现102

6.12 将他类用作成员数据的类104

6.13 结构107

6.15 问与答108

6.14 小结108

6.16.2 练习109

6.16.1 测验109

6.16 作业109

7.1.1 循环的鼻祖:goto111

7.1 循环111

第7章 再谈程序流程111

7.2 使用while循环112

7.1.2 为何避免使用goto语句112

7.2.1 更复杂的while语句113

7.2.2 continue和break简介114

7.2.3 while(true)循环116

7.3 实现do…while循环117

7.4 使用do…while118

7.5 for循环120

7.5.1 高级for循环122

7.5.3 循环嵌套124

7.5.2 空for循环124

7.6 循环小结126

7.5.4 for循环中声明的变量的作用域126

7.7 使用switch语句控制程序流程128

使用switch语句来处理菜单130

7.9 问与答133

7.8 小结133

7.10.2 练习134

7.10.1 测验134

7.10 作业134

8.1.2 获取变量的内存地址144

8.1.1 内存简介144

第1周复习144

第2周课程简介144

第8章 理解指针144

8.1 什么是指针144

8.1.3 将变量的地址存储到指针中145

8.1.5 获取指针指向的变量的值146

8.1.4 指针名146

8.1.7 指针、地址和变量147

8.1.6 使用间接运算符解除引用147

8.1.8 使用指针来操纵数据148

8.1.9 查看地址149

8.3 栈和自由存储区(堆)151

8.2 为什么使用指针151

8.3.2 使用关键字delete归还内存152

8.3.1 使用关键字new来分配内存152

8.5 在自由存储区上创建对象154

8.4 再谈内存泄漏154

8.6 删除自由存储区中的对象155

8.7 访问数据成员156

8.8 在自由存储区中创建成员数据157

8.9 this指针159

8.10 迷途指针160

8.11.1 const指针和const成员函数162

8.11 使用const指针162

8.12 小结164

8.11.2 使用const this指针164

8.14.2 练习165

8.14.1 测验165

8.13 问与答165

8.14 作业165

9.1 什么是引用167

第9章 使用引用167

9.2 将地址运算符用于引用168

9.3 引用对象170

9.5 按引用传递函数参数172

9.4 空指针和空引用172

9.5.1 使用指针让swap()管用173

9.5.2 使用引用来实现swap()174

9.7 返回多个值176

9.6 理解函数头和原型176

9.8 按引用传递以提高效率179

9.8.1 传递const指针181

9.8.2 用引用代潜指针183

9.9 何时使用引用和指针185

9.11 返回指向不在作用域中的对象的引用186

9.10 混合使用引用和指针186

9.12 指针归谁所有189

9.15.1 测验190

9.15 作业190

9.13 小结190

9.14 问与答190

9.15.2 练习191

10.1 重载成员函数192

第10章 有关函数的高级主题192

10.2 使用默认值194

10.5 重载构造函数196

10.4 默认构造函数196

10.3 在默认值和重载函数之间做出选择196

10.6 初始化对象198

10.7 复制构造函数199

10.8 运算符重载202

10.8.2 重载前缀运算符203

10.8.1 编写一个递增函数203

10.8.3 运算符重载函数的返回类型205

10.8.4 返回无名临时对象206

10.8.5 使用this指针207

10.8.7 前缀和后缀之间的差别209

10.8.6 重载后缀运算符209

10.8.8 重载双目数学运算符210

10.8.10 对运算符重载的限制213

10.8.9 运算符重载中存在的问题213

10.8.12 赋值运算符214

10.8.11 重载什么214

10.9 处理数据类型转换216

10.10 转换运算符218

10.11 小结219

10.13.1 测验220

10.13 作业220

10.12 问与答220

10.13.2 练习221

11.2 软件设计:建模语言222

11.1 建立模型222

第11章 面向对象分析及设计222

11.3.1 迭代式开发和瀑布式开发223

11.3 软件设计:过程223

11.3.2 迭代式开发过程224

11.5.1 用例225

11.5 第2步:分析阶段——收集需求225

11.4 第1步:概念化阶段——从愿景开始225

11.5.3 系统分析232

11.5.2 应用分析232

11.5.6 可交付品233

11.5.5 可视化233

11.5.4 规划文档233

11.6.1 什么是类234

11.6 第3步:设计阶段234

11.6.3 其他转换235

11.6.2 转换235

11.6.4 建立静态模型236

11.6.5 动态模型241

11.7 第4~6步:实现、测试和交付243

11.11 作业244

11.10 问与答244

11.8 迭代244

11.9 小结244

11.11.2 练习245

11.11.1 测验245

12.1.1 继承和派生246

12.1 什么是继承246

第12章 实现继承246

12.1.3 派生的语法247

12.1.2 动物世界247

12.2 私有和保护248

12.3 构造函数和析构函数的继承性250

12.4 覆盖基类函数256

12.4.1 隐藏基类方法258

12.4.2 调用基类方法259

12.5 虚方法261

12.5.1 虚函数的工作原理264

12.5.3 切除265

12.5.2 通过基类指针访问派生类的方法265

12.5.5 虚复制构造函数267

12.5.4 创建虚析构函数267

12.6 小结270

12.5.6 使用虚方法的代价270

12.8.2 练习271

12.8.1 测验271

12.7 问与答271

12.8 作业271

13.1.1 访问数组元素273

13.1 什么是数组273

第13章 管理数组和字符串273

13.1.2 在数组末尾后写入数据275

13.1.4 初始化数组277

13.1.3 护栏柱错误277

13.1.5 声明数组278

13.2 使用对象数组279

13.2.1 声明多维数组280

13.2.2 初始化多维数组281

13.3 指针数组282

13.4 指针算术284

13.5.1 数组指针和指针数组286

13.5 在自由存储区声明数组286

13.5.2 指针和数组名287

13.5.4 在运行阶段调整数组大小288

13.5.3 删除自由存储区中的数组288

13.6 字符数组和字符串291

13.7 使用方法strcpy()和strncpy()292

13.8 String类294

13.9 链表和其他结构299

13.12 问与答300

13.11 小结300

13.10 创建数组类300

13.13.2 练习301

13.13.1 测验301

13.13 作业301

14.1 单继承存在的问题302

第14章 多态302

14.1.2 向下转换304

14.1.1 提升304

14.1.3 将对象添加到链表中306

14.2 多重继承307

14.2.2 多重继承对象中的构造函数310

14.2.1 多重继承对象的组成部分310

14.2.3 歧义解析312

14.2.4 从共同基类继承313

14.2.5 虚继承316

14.2.6 多重继承存在的问题319

14.3 抽象数据类型320

14.2.7 混合(功能)类320

14.3.1 纯虚函数323

14.3.2 实现纯虚函数324

14.3.3 复杂的抽象层次结构327

14.3.4 哪些类是抽象的330

14.5 问与答331

14.4 小结331

14.6.2 练习332

14.6.1 测验332

14.6 作业332

15.1 在同一种类型的对象之间共享数据:静态成员数据344

第15章 特殊类和函数344

第2周复习344

第3周课程简介344

15.2 静态成员函数348

15.3 函数指针350

15.3.1 为什么使用函数指针353

15.3.2 函数指针数组356

15.3.3 将函数指针传递给其他函数358

15.3.4 将typedef用于函数指针360

15.4 成员函数指针363

15.7.1 测验367

15.7 作业367

15.5 小结367

15.6 问与答367

15.7.2 练习368

16.1 聚合369

第16章 高级继承369

16.1.2 控制对被聚合成员的访问375

16.1.1 访问被聚合类的成员375

16.1.3 聚合的代价376

16.1.4 按值传递导致复制378

16.2 以继承方式实现和聚合/代理381

16.3 私有继承390

16.4 添加友元类398

16.6 友元函数和运算符重载406

16.5 友元函数406

16.7 重载插入运算符410

16.9 问与答414

16.8 小结414

16.10.2 练习415

16.10.1 测验415

16.10 作业415

17.1.1 数据流的封装418

17.1 流概述418

第17章 处理流418

17.1.2 理解缓冲技术419

17.3 标准I/O对象420

17.2 流和缓冲区420

17.5 使用cin进行输入421

17.4 重定向标准流421

17.5.1 输入字符串422

17.5.2 字符串的问题423

17.6.1 单字符输入425

17.6 cin的其他成员函数425

17.5.3 >>的返回值425

17.6.2 从标准输入读取字符串428

17.6.3 使用cin.ignore()430

17.6.4 查看和插入字符:peek()和putback( )431

17.7.2 执行输出的函数432

17.7.1 刷新输出432

17.7 使用cout进行输出432

17.7.3 控制符、标记和格式化指令433

17.8 流和printf()函数之比较437

17.10 使用ofstream439

17.9 文件输入和输出439

17.10.2 打开文件进行输入和输出440

17.10.1 条件状态440

17.10.3 修改ofstream打开文件时的默认行为441

17.11 二进制文件和文本文件443

17.12 命令行处理445

17.15.1 测验448

17.15 作业448

17.13 小结448

17.14 问与答448

17.15.2 练习449

18.2 根据名称解析函数和类450

18.1 简介450

第18章 创建和使用名称空间450

18.2.1 变量的可见性451

18.2.2 链接性452

18.3 创建名称空间453

18.2.3 静态全局变量453

18.3.1 声明和定义类型454

18.3.4 嵌套名称空间455

18.3.3 添加新成员455

18.3.2 在名称空间外定义函数455

18.4 使用名称空间456

18.5.1 using编译指令457

18.5 关键字using457

18.5.2 using声明459

18.7 未命名的名称空间460

18.6 名称空间别名460

18.8 标准名称空间std461

18.9 小结462

18.11.1 测验463

18.11 作业463

18.10 问与答463

18.11.2 练习464

19.1 什么是模板465

第19章 模板465

19.2 创建模板定义466

19.2.1 使用名称467

19.2.2 实现模板468

19.3 将实例化的模板对象传递给函数471

19.4.1 非模板友元类和函数472

19.4 模板和友元472

19.4.2 通用模板友元类和函数475

19.5 使用模板对象479

19.5.1 使用具体化函数483

19.5.2 静态成员和模板488

19.6 标准模板库491

19.6.2 理解顺序容器492

19.6.1 使用容器492

19.6.3 理解关联容器499

19.6.4 使用算法类502

19.9 作业505

19.8 问与答505

19.7 小结505

19.9.2 练习506

19.9.1 测验506

20.1 程序中的各种错误508

第20章 处理错误和异常508

20.2 异常的基本思想509

20.2.1 异常处理的组成部分510

20.2.2 手工引发异常512

20.2.3 创建异常类513

20.3 使用try块和catch块516

20.4 捕获异常的工作原理517

20.4.1 使用多条catch语句517

20.4.2 异常层次结构520

20.5 异常中的数据及给异常对象命名522

20.6 异常和模板529

20.7 没有错误的异常531

20.8 关于代码蜕变532

20.9 bug和调试532

20.9.1 断点532

20.9.2 监视点532

20.9.3 查看内存532

20.9.4 查看汇编代码532

20.11 问与答533

20.12 作业533

20.10 小结533

20.12.1 测验534

20.12.2 练习534

21.1 预处理器和编译器535

21.2 预处理器指令#define535

第21章 杂项内容535

21.2.2 将#define用于检测536

21.2.3 预编译器命令#else536

21.2.1 使用#define来定义常量536

21.3 包含和多重包含防范538

21.4 宏538

21.5.1 字符串化540

21.5.2 拼接540

21.5 字符串操纵540

21.6 预定义的宏541

21.7 assert()宏541

21.7.1 使用assert( )进行调试542

21.7.2 assert()与异常之比较542

21.7.3 副作用543

21.7.4 类的不变量543

21.7.5 打印中间值548

21.7.6 宏与函数及模板之比较549

21.8 内联函数549

21.9 位运算550

21.9.4 “求补”运算符551

21.9.3 “异或”运算符551

21.9.5 设置位551

21.9.2 “或”运算符551

21.9.1 “与”运算符551

21.9.7 反转位552

21.9.8 位字段552

21.9.6 清除位552

21.10.2 大括号555

21.10.1 缩进555

21.10.3 长代码行和函数长度555

21.10 编程风格555

21.10.5 程序文本556

21.10.6 标识符命名556

21.10.4 格式化switch语句556

21.10.8 注释557

21.10.9 设置访问权限557

21.10.7 名称的拼写和大写557

21.10.13 使用const558

21.10.12 使用assert()558

21.11 C++开发工作的下一步558

21.11.1 从何处获得帮助和建议558

21.10.11 包含文件558

21.10.10 类定义558

21.12 小结559

21.11.3 保持联系559

21.13 问与答559

21.11.2 相关的C++主题:受控C++、C#和Microsoft的.NET559

21.14 作业560

21.14.1 测验560

21.14.2 练习561

附录A 二进制和十六进制574

A.1 其他进制574

第3周复习574

A.2 不同进制之间的转换575

A.2.1 二进制575

A.2.4 什么是KB576

A.2.3 位、字节和半字节576

A.2.5 二进制数576

A.2.2 为什么使用二进制576

A.3 十六进制577

附录B C++关键字580

附录C 运算符优先级581

第1章582

第2章582

附录D 答案582

第3章584

第4章585

第5章585

第6章587

第7章590

第8章591

第9章592

第10章594

第11章598

第12章601

第13章602

第14章603

第15章604

第16章610

第17章613

第18章615

第19章616

第20章620

第21章625

附录E 链表简介627

热门推荐