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

  • 购买积分:11 如何计算积分?
  • 作  者:王学颖,李航,张燕丽,李晖编著
  • 出 版 社:北京:科学出版社
  • 出版年份:2010
  • ISBN:9787030270184
  • 页数:286 页
图书介绍:本书全面介绍面向对象程序设计的基本概念,全面系统的介绍了c++语言的基本语法和编程方法,详细介绍c++语言面向对象的重要特征:类和对象、继承和派生词、多态性和虚函数等,同时简要介绍ACM-ICPC实训平台的基本使用方法。本书具有丰富的实例和习题,便于读者学习和巩固知识。

第1章 C++程序设计概述 1

1.1 C++语言的历史和演进 1

1.1.1 计算机语言的发展 1

1.1.2 C++语言的产生 2

1.1.3 C++语言的主要版本 2

1.2 C++语言的特点 2

1.2.1 面向过程 3

1.2.2 面向对象 3

1.3 面向对象的相关概念 3

1.4 C++程序的基本结构和开发环境 5

1.4.1 C++程序的基本结构 5

1.4.2 C++程序的实现 9

1.4.3 C++程序的开发环境 10

习题 17

第2章 C++语言基础 20

2.1 基本数据类型 20

2.2 标识符与关键字 22

2.3 常量与变量 24

2.3.1 常量 24

2.3.2 变量 27

2.4 运算符与表达式 28

2.4.1 运算符 28

2.4.2 表达式 33

2.5 数组 38

2.5.1 数组的定义 38

2.5.2 数组的赋值 39

2.5.3 字符数组 42

2.6 枚举 43

2.6.1 枚举类型定义 43

2.6.2 枚举变量定义 44

2.6.3 枚举变量赋值 44

2.7 结构体 45

2.7.1 结构体类型定义 45

2.7.2 结构体变量的定义和初始化 46

2.7.3 结构体变量的引用 47

2.8 共用体 48

2.9 控制语句 50

2.9.1 选择结构语句 50

2.9.2 循环结构语句 55

2.9.3 转向语句 61

2.10 应用实例——水果超市管理系统菜单设计 63

2.10.1 系统功能介绍 64

2.10.2 系统菜单设计 65

习题 66

第3章 指针和引用 71

3.1 指针 71

3.1.1 指针的概念 71

3.1.2 指针变量的定义 72

3.1.3 指针变量的运算 72

3.1.4 指针的指针 75

3.2 指针与数组 76

3.2.1 指向数组的指针 76

3.2.2 指针数组 80

3.3 字符串 82

3.3.1 C风格字符串 82

3.3.2 string类型 83

3.4 引用 85

3.4.1 引用的概念 85

3.4.2 指针和引用的区别与联系 86

3.5 指针及引用在函数中的作用 88

3.6 应用实例——水果超市管理系统的水果基本信息管理 89

习题 91

第4章 函数 96

4.1 函数的定义、声明和类型 96

4.1.1 函数的定义 96

4.1.2 函数的声明 98

4.1.3 函数的类型 99

4.2 函数的参数与调用 100

4.2.1 函数的参数 100

4.2.2 函数的调用 101

4.3 内联函数 105

4.4 函数的重载 106

4.5 标识符的作用域 108

4.5.1 作用域的种类 108

4.5.2 标识符的作用域规则 109

4.5.3 全局变量和局部变量 111

4.6 应用实例——水果超市管理系统中购物车的设计 115

习题 118

第5章 类和对象 123

5.1 类的定义 123

5.1.1 类的定义格式 123

5.1.2 类成员的访问控制 125

5.1.3 成员函数的特性 126

5.2 对象的定义和使用 128

5.2.1 对象的定义方法 128

5.2.2 对象成员的表示方法 128

5.3 构造函数和析构函数 130

5.3.1 构造函数 130

5.3.2 析构函数 135

5.4 静态成员 137

5.4.1 静态数据成员 138

5.4.2 静态成员函数 139

5.5 常对象和常成员 140

5.5.1 常对象 140

5.5.2 常数据成员 141

5.5.3 常成员函数 141

5.6 对象指针和对象引用 143

5.6.1 对象指针 143

5.6.2 this指针 147

5.6.3 对象引用 148

5.7 对象数组 149

5.7.1 对象数组的定义和使用 149

5.7.2 对象指针数组 150

5.7.3 指向对象数组的指针 151

5.8 子对象和堆对象 152

5.8.1 子对象 153

5.8.2 堆对象 154

5.9 友元 156

5.9.1 友元函数 156

5.9.2 友元类 157

5.10 类的作用域和对象的生存期 159

5.10.1 类的作用域 159

5.10.2 对象的生存期 159

5.11 应用实例——水果超市管理系统基本类的设计 161

5.11.1 “水果类”Fruit的设计 161

5.11.2 “水果总类”FruitKind的设计 163

5.11.3 “购买水果品种类”CartItem的设计 167

5.11.4 “购物车类”Cart的设计 168

习题 169

第6章 继承 176

6.1 继承的概念 176

6.1.1 什么是继承 176

6.1.2 派生类的定义格式 177

6.1.3 派生类对象的结构 177

6.2 继承方式 178

6.2.1 公有继承 178

6.2.2 私有继承 180

6.2.3 保护继承 181

6.3 派生类的构造函数和析构函数 183

6.4 多继承 186

6.4.1 多继承的概念 186

6.4.2 多继承下的构造函数 188

6.4.3 二义性 191

6.5 虚基类 195

6.5.1 虚基类的定义 195

6.5.2 虚基类的构造函数和析构函数 196

6.6 类型转换 198

6.6.1 派生类到基类的转换 198

6.6.2 基类到派生类的转换 199

6.7 应用实例——水果超市管理系统中类的继承关系 199

6.7.1 “正价水果类”RegularFruit的设计 199

6.7.2 “特价水果类”DiscountFruit的设计 201

6.7.3 验证 203

习题 204

第7章 多态 210

7.1 多态的描述 210

7.1.1 什么是多态 210

7.1.2 多态的分类 210

7.1.3 多态的实现方式 211

7.2 运算符重载 212

7.2.1 运算符重载的定义 212

7.2.2 双目运算符重载 213

7.2.3 单目运算符重载 218

7.3 虚函数 223

7.3.1 虚成员函数 226

7.3.2 虚析构函数 227

7.4 抽象类 230

7.4.1 纯虚函数 230

7.4.2 抽象类与具体类 231

7.5 应用实例——水果超市管理系统中虚函数的使用 232

习题 236

第8章 模板和STL 243

8.1 模板简介 243

8.2 函数模板 243

8.3 类模板 245

8.3.1 类模板的定义 246

8.3.2 类模板用作函数的参数 248

8.3.3 类模板用作基类 248

8.4 STL 249

8.4.1 STL简介 249

8.4.2 容器 250

8.4.3 迭代子 251

8.4.4 算法 253

习题 254

第9章 异常处理 256

9.1 简介 256

9.2 基本语法 257

9.3 构造函数、析构函数和异常 261

9.4 继承和异常 264

9.5 标准库中的异常类 264

习题 266

第10章 ACM-ICPC简介及在线实训 267

10.1 ACM-ICPC简介 267

10.2 在线实训模式 267

10.3 实训练习 269

习题 275

附录A C++常用运算符的功能、优先级和结合性 276

附录B 水果超市管理系统源程序清单 277

参考文献 286