《C++程序设计基础案例教程》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:于永彦,王志坚,娄渊胜主编
  • 出 版 社:北京市:北京大学出版社
  • 出版年份:2009
  • ISBN:9787301145104
  • 页数:314 页
图书介绍:本书第1章C/C++语言简单程序的编写和调试;第2章C语言程序设计基础;第3章控制结构;第4章数组;第5章指针;第6章函数;第7章编译预处理与变量的存储类型;第8章文件;第9章结构体与共用体;第10章图形程序设计基础;第11章C++程序设计基础;第12章查找与排序。

第1章 绪论 1

1.1 软件设计基础 1

1.1.1 结构化方法 1

1.1.2 面向对象方法 2

1.1.3 专家系统方法 3

1.2 计算机语言发展史 3

1.2.1 低级语言阶段 3

1.2.2 高级语言阶段 5

1.2.3 超高级程序设计语言 5

1.2.4 第五代计算机语言 5

1.2.5 面向未来的汉语程序设计语言 6

1.3 C++程序设计语言 6

1.3.1 C+++语言的演变 6

1.3.2 C+++语言的优点 7

第2章 语言基础 8

引言 9

2.1 变量 11

2.1.1 什么是变量 11

2.1.2 变量声明 11

2.2 常量 19

2.3 运算符 20

2.3.1 算术运算符 21

2.3.2 关系运算符 23

2.3.3 逻辑运算符 23

2.3.4 赋值运算符 24

2.3.5 条件运算符 25

2.3.6 逗号运算符 25

2.3.7 sizeof运算符 25

2.3.8 特殊运算符 26

2.3.9 优先级和结合性 27

2.4 表达式 28

2.4.1 表达式的种类 28

2.4.2 表达式的值和类型 29

2.5 输入与输出 31

2.5.1 输入操作 32

2.5.2 输出操作 35

本章总结 40

习题 40

第3章 程序控制流程 41

引言 42

3.1 顺序结构 42

3.2 选择结构 44

3.2.1 if语句 44

3.2.2 switch语句 47

3.3 循环结构 49

3.3.1 while语句 50

3.3.2 do-while语句 51

3.3.3 for语句 53

3.3.4 循环嵌套 54

3.4 其他控制语句 55

3.4.1 goto语句 55

3.4.2 break语句 56

3.4.3 continue语句 58

本章总结 59

习题 60

第4章 程序结构 62

引言 63

4.1 函数基础 63

4.1.1 函数定义 63

4.1.2 函数调用 64

4.1.3 函数说明 65

4.1.4 参数传递 66

4.1.5 函数嵌套调用 68

4.2 3种特殊函数 69

4.2.1 重载函数 69

4.2.2 默认参数值的函数 71

4.2.3 内联函数 71

4.3 函数模板与模板函数 72

4.3.1 定义函数模板 73

4.3.2 函数模板实例化 73

4.3.3 重设模板函数 75

4.4 递归函数 76

4.5 单文件结构 78

4.5.1 作用域 79

4.5.2 可见性 81

4.5.3 局部变量、全局变量与静态变量 82

4.5.4 生存期 85

4.6 多文件结构 86

4.6.1 静态存储类型 86

4.6.2 外部存储类型 88

4.7 编译预处理 89

4.7.1 宏定义 89

4.7.2 文件包含 91

4.7.3 条件编译 92

4.8 综合实例 95

本章总结 96

习题 97

第5章 数组 99

引言 100

5.1 一维数组 101

5.1.1 一维数组的定义、初始化与元素引用 101

5.1.2 数组作为函数参数 102

5.1.3 一维数组的基本操作 103

5.1.4 一维数组的应用 109

5.2 二维数组 111

5.2.1 二维数组的定义、初始化与元素引用 111

5.2.2 二维数组的基本操作 113

5.2.3 二维数组的应用 117

5.3 字符数组 119

5.3.1 字符数组的定义、初始化 119

5.3.2 字符数组的输入/输出 120

5.3.3 字符串处理函数 121

5.3.4 字符数组的应用 124

5.4 动态数组 125

5.4.1 动态数组的定义 126

5.4.2 动态数组的应用 126

5.5 综合实例 127

本章总结 129

习题 130

第6章 链表 132

引言 133

6.1 认识链表 133

6.2 链表节点类型 135

6.3 创建与显示链表 137

6.3.1 创建链表 137

6.3.2 链表的遍历 140

6.4 链表的基本操作 141

6.4.1 查找指定节点 141

6.4.2 统计节点个数 142

6.4.3 插入链表节点 142

6.4.4 删除链表节点 144

6.4.5 链表排序 146

6.5 链表应用 147

6.6 综合实例 152

本章总结 153

习题 154

第7章 类与对象 156

引言 157

7.1 类定义 157

7.1.1 类定义模式 158

7.1.2 类成员访问控制 159

7.1.3 类的数据成员 160

7.1.4 类的成员函数 160

7.2 对象 165

7.2.1 对象声明 165

7.2.2 对象数组 169

7.3 构造函数和析构函数 171

7.3.1 构造函数 171

7.3.2 拷贝构造函数 173

7.3.3 析构函数 176

7.4 静态成员 180

7.5 类的组合 184

7.5.1 什么是类的组合 184

7.5.2 组合类的构造函数 185

7.6 综合实例 187

本章总结 192

习题 193

第8章 继承与派生 197

引言 198

8.1 派生类的声明 200

8.1.1 派生类的定义格式 200

8.1.2 类的继承方式 201

8.1.3 派生类的生成过程 206

8.2 派生类的构造函数和析构函数 207

8.2.1 构造函数 207

8.2.2 析构函数 209

8.3 基类与派生类的关系 210

8.3.1 抽取与重载的关系 211

8.3.2 兼容规则 211

8.4 多重继承 213

8.4.1 多重继承派生类的定义 215

8.4.2 多重继承派生类的构造函数 216

8.5 二义性问题 220

8.5.1 一般二义性问题 220

8.5.2 公共基类的二义性问题 224

8.6 虚基类 226

8.6.1 虚基类的声明 226

8.6.2 虚基类及其派生类的构造函数 226

8.7 访问基类私有成员 230

8.8 引入派生类后的对象指针 231

8.9 综合实例 234

本章总结 237

习题 237

第9章 多态性 239

引言 240

9.1 理解多态性的概念 240

9.1.1 什么是多态性 240

9.1.2 什么是联编 242

9.2 运算符重载 243

9.2.1 为什么要重载运算符 243

9.2.2 运算符重载的规则 244

9.2.3 运算符重载为成员函数 245

9.2.4 运算符重载为友元函数 249

9.3 虚函数 255

9.3.1 为什么要引入虚函数 255

9.3.2 虚函数的定义及使用 257

9.3.3 多继承中的虚函数 259

9.3.4 虚函数的数据封装 261

9.3.5 纯虚函数 262

9.3.6 虚函数的限制 264

9.3.7 虚函数与函数重载的关系 264

9.4 抽象类 265

9.5 类模板 267

9.5.1 为什么使用类模板 267

9.5.2 类模板的定义 268

9.6 综合实例 271

本章总结 276

习题 276

第10章 文件流类 279

引言 280

10.1 C++流库基础 280

10.1.1 streambuf类层次 281

10.1.2 ios类层次 282

10.2 文件流类 283

10.2.1 ifstream类 283

10.2.2 ofstream类 284

10.2.3 fstream类 284

10.3 文件操作 284

10.3.1 声明文件流对象 284

10.3.2 文件打开 285

10.3.3 文件的读/写操作 286

10.3.4 关闭文件 287

10.4 文本文件 288

10.4.1 文本文件的写 288

10.4.2 文本文件的读 289

10.5 二进制文件 290

10.6 随机文件 292

10.7 重载输入/输出运算符 295

10.7.1 重载输入运算符 295

10.7.2 重载输出运算符 297

10.8 可流类 299

10.9 综合实例 301

本章总结 308

习题 309

附录 C/C++常用函数 310

参考文献 312