《C++程序设计》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:朱金付主编
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2009
  • ISBN:9787302194323
  • 页数:402 页
图书介绍:本书较为全面地介绍了程序设计语言C++,重点介绍了C++的基本概念、基本语法和基本的程序思想。

第1章 计算机基础知识 1

1.1 本章导读 1

1.2 计算机系统结构及工作原理 1

1.2.1 计算机的体系结构—冯·诺依曼结构 2

1.2.2 计算机中的数据存储体系 5

1.2.3 计算机的工作原理 8

1.3 数制转换、字符编码 10

1.3.1 进位计数制 10

1.3.2 不同数制之间的转换 11

1.3.3 计算机中的数据表示和存储 15

1.3.4 非数值数据的编码 19

1.4 程序设计语言 23

1.5 操作系统 25

1.5.1 操作系统的组成和功能 26

1.5.2 人与计算机的交互 28

1.5.3 Windows的文件系统 30

1.6 算法与算法设计基础 34

1.6.1 算法 34

1.6.2 算法的表示 37

1.6.3 算法设计基本方法 38

1.7 数据结构基础 41

1.7.1 数据结构的基本概念 41

1.7.2 数据结构的表示 43

1.7.3 抽象数据类型 46

1.7.4 栈和队列 47

1.7.5 几个典型的基本算法 48

习题 49

第2章 C++基本概念 53

2.1 本章导读 53

2.2 C语言与C++语言简介 54

2.2.1 C语言与C++的起源 54

2.2.2 第一个C++源程序 55

2.2.3 编译、调试、运行程序 56

2.2.4 VisualC++集成开发环境 57

2.3 基本词法单位 58

2.3.1 关键字 58

2.3.2 标识符 58

2.3.3 标点符号 59

2.3.4 分隔符 59

2.4 数据类型 59

2.5 变量 61

2.5.1 变量的定义和初始值 61

2.5.2 变量与引用 61

2.6 常量 62

2.6.1 整型常量 63

2.6.2 实型常量 63

2.6.3 字符常量 63

2.6.4 转义字符 64

2.6.5 字符串常量 65

2.6.6 const常变量 65

2.6.7 宏定义常量 65

2.7 运算符和表达式 66

2.7.1 运算符和运算符优先级 66

2.7.2 算术运算符与算术表达式 67

2.7.3 赋值运算符和赋值表达式 71

2.7.4 关系运算符和关系表达式 72

2.7.5 逻辑运算符和逻辑表达式 73

2.7.6 字位运算符 74

2.7.7 其他常用运算符 75

2.7.8 类型转换 76

2.8 C++语句 78

2.9 简单输入、输出 78

2.9.1 cin 78

2.9.2 cout 81

习题 83

第3章 流程控制语句 87

3.1 本章导读 87

3.2 选择结构语句 88

3.2.1 if语句 88

3.2.2 switch语句 95

3.2.3 if与switch之间的转换 98

3.3 循环结构 99

3.3.1 while循环 100

3.3.2 do-while循环 101

3.3.3 for循环 102

3.3.4 三种循环的等价性和区别 104

3.3.5 循环的嵌套 104

3.4 控制执行顺序的语句 107

3.4.1 break语句 107

3.4.2 continue语句 109

3.5 算法与算法设计方法 109

3.5.1 枚举法(穷举法) 110

3.5.2 迭代与递推法 111

习题 113

第4章 函数和编译预处理 119

4.1 本章导读 119

4.2 函数的定义 120

4.2.1 有参函数定义 120

4.2.2 无参函数 121

4.2.3 函数的返回和返回值 122

4.3 函数的调用 123

4.3.1 形参与实参 123

4.3.2 函数的原型说明 124

4.4 函数的参数传递方式 125

4.4.1 值传递 125

4.4.2 引用传递 126

4.5 函数的递归调用 128

4.6 存储类别和作用域 131

4.6.1 作用域 131

4.6.2 变量的存储类别 134

4.7 函数的重载、内联、缺省参数 137

4.7.1 函数的重载 137

4.7.2 函数的内联 138

4.7.3 缺省参数的函数 139

4.8 预处理指令与编译预处理 141

4.8.1 文件包含指令 141

4.8.2 宏定义指令 142

4.8.3 条件编译指令 145

4.9 程序的多文件组织 146

4.10 C++库函数 148

4.11 函数调用与栈 149

4.11.1 参数传递与栈 149

4.11.2 自动变量与栈 150

4.11.3 函数递归调用和栈 151

习题 153

第5章 构造数据类型 159

5.1 本章导读 159

5.2 一维数组 160

5.2.1 一维数组的定义 160

5.2.2 一维数组的初始化 162

5.2.3 数组元素的引用 163

5.2.4 一维数组的应用 163

5.3 二维数组 168

5.3.1 二维数组的定义 168

5.3.2 二维数组的初始化 169

5.3.3 二维数组的应用 170

5.4 数组和函数 174

5.4.1 数组元素用作函数参数 174

5.4.2 数组名用为函数参数 175

5.5 字符数组 178

5.5.1 字符数组的定义和初始化 178

5.5.2 字符数组的赋值、输入和输出 179

5.5.3 字符串与字符数组 180

5.5.4 字符数组的应用 181

5.6 字符串函数 183

5.6.1 常用字符串处理函数 183

*5.6.2 字符串类变量及其应用 186

5.7 数组应用 187

5.7.1 选择法排序 187

5.7.2 矩阵运算 190

习题 191

第6章 其他构造数据类型—结构、联合、枚举和类 197

6.1 本章导读 197

6.2 结构体类型 198

6.2.1 结构体类型定义 198

6.2.2 结构体类型变量的定义及其初始化 199

6.2.3 结构体类型变量的引用 201

6.2.4 结构体与数组 202

6.2.5 结构体类型与函数 203

6.3 共同体类型 205

6.4 枚举类型 206

6.4.1 枚举类型数据的定义 206

6.4.2 枚举类型的应用 208

6.5 类型定义语句typedef 210

6.6 类 211

6.6.1 类类型的定义 211

6.6.2 类的成员函数 213

6.6.3 inline成员函数 214

6.6.4 类与结构体的异同 215

6.6.5 类的对象及其定义 216

6.6.6 类和对象的简单应用 218

习题 221

第7章 指针 227

7.1 本章导读 227

7.2 指针 228

7.2.1 指针变量的定义 229

7.2.2 指针变量的引用 230

7.2.3 多级指针及其定义 231

7.3 指针与数组 232

7.3.1 指针与一维数组 232

7.3.2 指针的运算 233

7.3.3 指针与二维数组 236

7.3.4 指针数组 238

7.3.5 指向数组的指针 239

7.4 指针与函数 240

7.4.1 指针作为函数参数 240

7.4.2 返回值为指针的函数 243

7.4.3 指向函数的指针 245

7.4.4 用函数指针调用函数 246

7.5 const指针 247

7.6 void指针 249

7.7 指针与字符串 250

7.7.1 字符串的表示形式 250

7.7.2 字符串指针与函数 252

7.7.3 字符串指针与数组 253

7.8 引用 254

7.8.1 引用的定义 254

7.8.2 引用和函数 255

7.9 内存的动态分配和撤销 255

7.9.1 new运算符 256

7.9.2 delete运算符 257

7.10 指针应用 258

7.10.1 链表 258

7.10.2 约瑟夫环(Josephus)问题 265

习题 266

第8章 类和对象 273

8.1 本章导读 273

8.2 面向对象的程序设计方法 274

8.3 构造函数与析构函数 276

8.3.1 构造函数的定义与使用 277

8.3.2 默认构造函数 278

8.3.3 构造函数和new运算符 282

8.3.4 析构函数的定义与使用 283

8.3.5 构造函数与类型转化 286

8.4 复制构造函数 286

8.5 对象成员和类的嵌套定义 289

8.5.1 对象成员 289

8.5.2 类的嵌套定义 290

8.6 友元函数和友元类 291

8.6.1 友元函数 292

8.6.2 友元类 293

8.7 静态成员 296

8.7.1 静态数据成员 296

8.7.2 静态函数成员 297

8.8 共用数据的保护 299

8.8.1 常对象 299

8.8.2 常成员 299

8.8.3 指向对象的常指针和对象的常引用 300

8.9 this指针 301

习题 302

第9章 继承与派生 307

9.1 本章导读 307

9.2 继承与派生的概念 307

9.2.1 类的继承与派生概念 307

9.2.2 派生类的定义 308

9.2.3 基类成员的访问控制 309

9.3 派生类的构造与析构函数 313

9.4 冲突、支配与赋值兼容规则 316

9.5 虚基类 320

习题 323

第10章 多态 325

10.1 本章导读 325

10.2 虚函数 326

10.2.1 虚函数的定义及实现过程 326

10.2.2 虚函数实现过程 327

10.2.3 纯虚函数和抽象类 330

10.3 运算符重载 332

10.3.1 成员函数实现运算符重载及方法 333

10.3.2 友元函数实现运算符重载及方法 336

10.3.3 类型转换函数 340

10.3.4 一些特殊运算符的重载 341

10.3.5 实现字符串类的运算符重载 346

习题 349

第11章 输入输出流类库 353

11.1 本章导读 353

11.2 流概述 354

11.3 C++的基本流类体系 354

11.4 标准输入输出流 355

11.4.1 标准输入流 355

11.4.2 标准输出流 356

11.4.3 流的格式控制 357

11.4.4 输入输出的其他成员函数 361

11.4.5 提取和插入运算符重载 364

*11.4.6 重定向概念 365

11.5 文件流 366

11.5.1 文件概述 366

11.5.2 文件流类体系 366

11.5.3 文件的使用方法 366

11.6 文本文件的使用 370

11.7 二进制文件的使用 374

11.7.1 二进制文件的打开和关闭 374

11.7.2 二进制文件的读写 374

11.7.3 文件的随机访问 376

习题 378

第12章 模板 381

12.1 本章导读 381

12.2 函数模板和类模板 381

12.2.1 函数模板的定义和使用 381

12.2.2 类模板的定义和使用 383

12.3 标准模板库简介 387

12.4 模板简单应用实例 388

习题 393

附录A 标准ASCII码表 395

附录B 常用系统函数 397

参考文献 403