图书介绍

C++从入门到实践2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

C++从入门到实践
  • 秦广军等编著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302200260
  • 出版时间:2009
  • 标注页数:456页
  • 文件大小:104MB
  • 文件页数:478页
  • 主题词:C语言-程序设计

PDF下载


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

下载说明

C++从入门到实践PDF格式电子书版下载

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

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

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

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

图书目录

第1篇 面向过程的C++编程第1章 C++预备知识2

1.1 概述2

1.1.1 C++的发展史2

1.1.2 为什么要选择C++2

1.1.3 对面向对象方法的支持3

1.2 开发工具3

1.2.1 常见的C++开发工具3

1.2.2 Visual C++ 6.0开发环境简介5

1.2.3 Visual C++ 6.0开发环境的使用6

1.2.4 Visual C++ 6.0使用示例9

1.3 程序结构14

1.3.1 第一个程序14

1.3.2 文件的组织16

1.4 编码规范16

1.4.1 风格指南16

1.4.2 注释的使用17

1.4.3 美化代码18

1.5 标识符19

1.5.1 保留字19

1.5.2 标识符命名19

1.6 上机实践20

1.7 常见问题及解答20

1.8 小结21

1.9 习题21

第2章 数据类型22

2.1 数字运算型22

2.1.1 整型22

2.1.2 实型23

2.1.3 浮点型24

2.1.4 双精度型25

2.2 逻辑运算型25

2.2.1 与运算25

2.2.2 或运算26

2.2.3 非运算26

2.2.4 逻辑运算的组合27

2.3 字符型和字符串27

2.3.1 字符28

2.3.2 字符串29

2.3.3 字符与字符串的差异29

2.4 复合类型30

2.5 本章实例30

2.6 上机实践31

2.7 常见问题及解答32

2.8 小结32

2.9 习题32

第3章 变量和常量33

3.1 变量33

3.1.1 什么叫变量33

3.1.2 种类36

3.1.3 初始化37

3.1.4 变量的命名规范38

3.2 常量39

3.2.1 什么叫常量39

3.2.2 种类39

3.2.3 常量使用的几点说明41

3.2.4 初始化42

3.2.5 常量的命名规范42

3.3 本章实例42

3.4 上机实践45

3.5 常见问题与解答45

3.6 小结46

3.7 习题46

第4章 运算符47

4.1 算术运算符47

4.2 逻辑运算符50

4.3 关系运算符51

4.4 位运算53

4.5 赋值57

4.6 运算符的优先级和结合性58

4.6.1 优先级58

4.6.2 结合性61

4.7 本章实例61

4.8 上机实践63

4.9 常见问题及解答64

4.10 小结65

4.11 习题65

第5章 表达式66

5.1 定义和书写66

5.1.1 表达式的分类66

5.1.2 表达式的意义67

5.1.3 表达式的书写67

5.2 类型转换68

5.2.1 隐式类型转换68

5.2.2 显式类型转换71

5.3 本章实例74

5.4 上机实践74

5.5 常见问题及解答76

5.6 小结76

5.7 习题76

第6章 语句78

6.1 简单语句和语句块78

6.1.1 简单语句78

6.1.2 语句块79

6.2 程序的执行结构81

6.3 选择型语句81

6.3.1 if语句82

6.3.2 switch语句85

6.4 循环型语句88

6.4.1 while语句88

6.4.2 do...while语句89

6.4.3 for语句90

6.5 标签语句92

6.5.1 普通标签语句92

6.5.2 特殊标签语句94

6.6 跳转语句94

6.6.1 break语句95

6.6.2 continue语句95

6.6.3 goto语句96

6.7 语句嵌套97

6.7.1 自增97

6.7.2 自减98

6.7.3 逗号语句98

6.7.4 ?语句99

6.8 本章实例100

6.9 上机实践101

6.10 常见问题及解答101

6.11 小结102

6.12 习题102

第7章 指针104

7.1 地址是什么104

7.2 指针的定义方式105

7.2.1 指针的定义105

7.2.2 指针的分析106

7.2.3 sizeof运算符106

7.3 指针的种类108

7.4 初始化109

7.4.1 用另一个指针的地址初始化110

7.4.2 用某个变量的地址初始化110

7.4.3 用new分配内存单元111

7.4.4 用malloc分配内存单元112

7.5 指针的运算113

7.5.1 算术运算113

7.5.2 关系运算116

7.6 指针的指针117

7.7 指针的使用119

7.7.1 指针的赋值119

7.7.2 操作符120

7.8 引用与指针121

7.9 特殊指针123

7.9.1 void型指针123

7.9.2 空指针124

7.10 指针的命名规范125

7.11 本章实例126

7.12 上机实践128

7.13 常见问题及解答128

7.14 小结129

7.15 习题129

第8章 复合类型131

8.1 定义数组131

8.1.1 维数完整131

8.1.2 维数不全132

8.1.3 无维数132

8.2 动态数组132

8.2.1 在堆上分配空间的动态数组133

8.2.2 在栈上分配空间的“伪动态”数组134

8.3 存储135

8.3.1 按列优先顺序(column maior order)136

8.3.2 按行优先顺序(row major order)136

8.4 字符数组137

8.4.1 字符数组的定义和使用137

8.4.2 字符数组和字符串间的区别138

8.4.3 字符数组和字符串指针变量138

8.5 初始化139

8.5.1 数组在定义时的初始化139

8.5.2 用赋值语句初始数组140

8.6 指针与数组141

8.6.1 指向数组的指针141

8.6.2 指针数组142

8.7 数组的使用143

8.7.1 索引方式143

8.7.2 指针方式145

8.8 枚举146

8.9 结构体148

8.10 共用体150

8.11 自定义型(typedef的使用)152

8.11.1 typedef的作用152

8.11.2 定义自己的类型154

8.12 本章实例156

8.13 上机实践157

8.14 常见问题及解答157

8.15 小结158

8.16 习题158

第9章 函数160

9.1 函数的定义160

9.1.1 函数的定义方式160

9.1.2 函数定义的示例162

9.2 函数的类型165

9.2.1 根据函数的返回值类型来划分165

9.2.2 根据作用域来划分166

9.2.3 根据C++类的成员函数特性来划分167

9.3 函数的参数168

9.3.1 形参169

9.3.2 实参169

9.4 返回值与返回语句171

9.4.1 返回值171

9.4.2 返回语句171

9.5 函数调用172

9.5.1 单独调用172

9.5.2 函数表达式调用172

9.5.3 函数调用作为实参173

9.5.4 参数传递方式173

9.6 递归函数174

9.7 指向函数的指针176

9.8 函数作为参数176

9.9 main()函数及命令行处理178

9.10 函数的书写规范180

9.11 本章实例180

9.12 上机实践181

9.13 常见问题及解答182

9.14 小结182

9.15 习题182

第10章 C++中的输入/输出184

10.1 iostream库184

10.1.1 标准I/O184

10.1.2 文件I/O185

10.1.3 字符串I/O186

10.2 输出187

10.2.1 预定义类型的输出187

10.2.2 自定义类型的输出188

10.3 输入189

10.3.1 预定义类型的输入189

10.3.2 自定义类型的输入190

10.4 输入/输出的格式化191

10.4.1 使用ios类成员函数进行格式化191

10.4.2 使用操纵函数进行格式化控制194

10.5 文件195

10.5.1 文件的打开与关闭195

10.5.2 文件的顺序读写197

10.5.3 文件的随机读写198

10.6 本章实例200

10.7 上机实践202

10.8 常见问题及解答202

10.9 小结203

10.10 习题203

第11章 面向过程的程序设计案例204

11.1 问题定义204

11.2 需求分析205

11.3 总体设计205

11.3.1 数据结构205

11.3.2 图书基础数据维护206

11.3.3 图书借阅208

11.3.4 图书返还209

11.3.5 会员基础数据维护209

11.3.6 总体流程图211

11.4 编码212

11.4.1 主控文件bookmanager.cpp212

11.4.2 菜单处理头文件mainfunction.h212

11.4.3 数据结构头文件datainfo.h213

11.4.4 功能函数头文件subfunction.h213

11.4.5 菜单处理实现文件mainfunction.cpp214

11.4.6 功能函数实现文件subfunction.cpp217

11.5 小结227

第2篇 面向对象的C++程序设计第12章 面向对象230

12.1 概念230

12.2 面向对象的程序设计232

12.3 对象和类232

12.4 面向对象的3大特点233

12.4.1 封装233

12.4.2 继承234

12.4.3 多态234

12.5 面向对象的软件开发234

12.5.1 面向对象分析235

12.5.2 面向对象设计235

12.5.3 面向对象测试236

12.5.4 面向对象维护236

12.6 本章实例236

12.7 常见问题及解答238

12.8 小结239

12.9 习题239

第13章 封装240

13.1 类240

13.1.1 类的声明240

13.1.2 类的属性242

13.1.3 类的方法243

13.1.4 构造函数244

13.1.5 析构函数247

13.1.6 静态成员248

13.1.7 友元249

13.1.8 修饰符251

13.1.9 指向类成员的指针252

13.1.10 嵌套类253

13.1.11 类文件的组织254

13.2 对象256

13.2.1 对象的定义256

13.2.2 对象的使用257

13.2.3 this指针259

13.3 本章实例260

13.4 上机实践261

13.5 常见问题及解答262

13.6 小结262

13.7 习题262

第14章 命名空间和作用域263

14.1 概述263

14.2 命名空间的定义263

14.3 如何使用命名空间265

14.4 作用域267

14.4.1 什么叫作用域267

14.4.2 作用域的分类268

14.5 本章实例270

14.6 上机实践276

14.7 常见问题及解答277

14.8 小结277

14.9 习题277

第15章 继承和派生278

15.1 继承和派生的关系278

15.2 派生一个类279

15.2.1 基类279

15.2.2 派生280

15.2.3 构造函数282

15.2.4 析构函数284

15.2.5 同名方法的使用286

15.2.6 同名属性的使用287

15.3 单重继承288

15.4 多重继承289

15.4.1 多重继承的目的289

15.4.2 构造多重继承289

15.4.3 析构函数和构造函数290

15.4.4 多重继承的二义性292

15.5 虚继承与虚基类295

15.5.1 虚基类的作用295

15.5.2 虚基类初始化298

15.5.3 虚基类的继承300

15.6 继承中的限制300

15.7 本章实例301

15.8 上机实践304

15.9 常见问题及解答305

15.10 小结306

15.11 习题306

第16章 多态307

16.1 概念307

16.2 宏多态308

16.3 虚函数309

16.3.1 虚函数的作用309

16.3.2 静态绑定311

16.3.3 动态绑定312

16.3.4 纯虚函数312

16.4 抽象类313

16.4.1 什么是抽象类313

16.4.2 抽象类的派生314

16.5 运算符重载315

16.5.1 为什么要重载运算符315

16.5.2 重载的限制316

16.5.3 重载一元运算符317

16.5.4 重载二元运算符317

16.6 函数重载319

16.6.1 参数类型不同319

16.6.2 参数个数不同320

16.7 流的重载321

16.7.1 流插入的重载321

16.7.2 流提取的重载322

16.8 覆盖324

16.8.1 覆盖函数324

16.8.2 覆盖变量326

16.9 本章实例327

16.10 上机实践329

16.11 常见问题及解答330

16.12 小结330

16.13 习题330

第17章 模板332

17.1 模板的概念332

17.2 类模板333

17.2.1 类模板的定义333

17.2.2 类模板的示例334

17.2.3 类模板和模板类的区别336

17.3 函数模板337

17.3.1 函数模板的定义337

17.3.2 函数模板的示例337

17.3.3 函数模板与模板函数的区别339

17.4 模板的实例化339

17.5 模板的作用340

17.6 基于模板的元编程简介340

17.6.1 元编程的概念341

17.6.2 基于模板的元编程341

17.7 本章实例342

17.8 上机实践345

17.9 常见问题及解答345

17.10 小结346

17.11 习题346

第18章 面向对象的程序设计案例347

18.1 问题定义347

18.2 需求分析347

18.3 面向对象分析与设计348

18.3.1 类结构的设计348

18.3.2 类的可见性348

18.3.3 类的结构图349

18.4 编码和测试350

18.4.1 预编译头文件Stdafx.h350

18.4.2 CCNTime类的头文件Cntime.h351

18.4.3 CCNTime类的实现文件Cntime.cpp352

18.4.4 主文件main.cpp359

18.5 小结360

第3篇 高级篇362

第19章 string类362

19.1 定义362

19.2 string类的方法364

19.3 string类的运算366

19.3.1 字符串查找367

19.3.2 字符串替换369

19.3.3 取子字符串370

19.3.4 字符串比较370

19.3.5 字符串连接371

19.3.6 字符串插入371

19.3.7 获取字符串大小和容量371

19.4 本章实例372

19.5 上机实践375

19.6 常见问题及解答376

19.7 小结376

19.8 习题376

第20章 异常处理377

20.1 异常处理的机制377

20.2 异常的抛出377

20.3 异常的捕获379

20.4 异常处理的规格381

20.5 常见的标准异常382

20.6 本章实例382

20.7 上机实践384

20.8 常见问题及解答385

20.9 小结386

20.10 习题386

第21章 内存管理387

21.1 内存的分类387

21.2 栈内存管理388

21.2.1 申请栈内存388

21.2.2 使用栈内存389

21.2.3 释放栈内存391

21.2.4 改变大小391

21.3 堆内存管理392

21.3.1 申请堆内存392

21.3.2 使用堆内存393

21.3.3 释放堆内存394

21.3.4 改变大小395

21.4 本章实例396

21.5 上机实践397

21.6 常见问题及解答397

21.7 小结398

21.8 习题398

第22章 预处理400

22.1 什么叫预处理400

22.2 常见的预处理400

22.2.1 文件包含401

22.2.2 布局控制401

22.2.3 宏替换405

22.2.4 条件编译406

22.3 其他预处理指令407

22.4 本章实例408

22.5 上机实践410

22.6 常见问题及解答411

22.7 小结411

22.8 习题412

第23章 错误与调试413

23.1 错误的定义413

23.2 错误的处理413

23.2.1 语法错误414

23.2.2 链接错误415

23.2.3 运行时错误416

23.3 错误的排查417

23.3.1 错误信息的理解417

23.3.2 错误发现的方法417

23.3.3 调试的原则418

23.4 常见bug的分类419

23.5 调试的技巧419

23.5.1 断言assert420

23.5.2 verify420

23.5.3 assert与Verify的差异421

23.5.4 轨迹跟踪421

23.5.5 断点423

23.6 Visual C++编程环境中的交互式调试423

23.6.1 设置和删除断点423

23.6.2 Debug窗口424

23.6.3 Watch面板425

23.6.4 调试的步进方式425

23.7 本章实例426

23.8 上机实践427

23.9 常见问题及解答428

23.10 小结428

23.11 习题428

第4篇 应用篇432

第24章 数据结构案例432

24.1 案例1——用链表模拟堆栈432

24.1.1 链栈类的定义文件LinkStack.h432

24.1.2 链栈类的实现文件LinkStack.cpp433

24.1.3 链栈类的使用文件example.cpp435

24.2 案例2——图的遍历436

24.2.1 图的存储及遍历437

24.2.2 图遍历的代码437

24.3 小结441

第25章 网络应用案例442

25.1 案例1——客户机/服务器案例442

25.1.1 Winsocket 2常用函数442

25.1.2 服务器/客户机编程模式445

25.1.3 服务器和客户端公用文件446

25.1.4 服务器端实现449

25.1.5 客户端实现450

25.2 案例2——自定义协议451

25.2.1 自定义协议452

25.2.2 自定义协议的实现453

25.3 小结456

热门推荐