《面向对象程序设计经典实验案例集》PDF下载

  • 购买积分:9 如何计算积分?
  • 作  者:郑莉主编
  • 出 版 社:北京:高等教育出版社
  • 出版年份:2012
  • ISBN:9787040346428
  • 页数:199 页
图书介绍:本书是教育部高等学校计算机基础课程教学指导委员会组织编写的《高等学校计算机基础课程经典实验案例集丛书》之一。本书基于C++语言的基本语法设计了数十个实验项目,包含数百个经典题目和案例,并以综合性和实用性为基准设计了若干实验案例分析。通过这些精心设计的案例深入浅出地介绍C++语言程序设计的特点,循序渐进地介绍C++的基本知识、语法和面向对象程序设计的思想与方法。全书共分为13章,内容包括程序基本知识、简单数据与运算、流程控制、复杂数据与运算、输入输出流、函数基础、函数模板基础、结构体基础、类、运算符重载、类的多态与重用、类模板、面向对象设计与标准库。本书结构清晰,案例选择得当,知识覆盖面广;在设计上注重通用性,对于大多数C++程序设计课程而言,本书都是一本适合选用的配套实验教材。本书不仅可以作为大学C++程序设计课程的实验教材,也适合初学者用做学习C++程序设计的参考书。

第0章 绪论 1

0.1实验目标和要求 1

0.1.1实验目标 1

0.1.2实验要求 1

0.2实验实施要点 1

0.2.1实验准备 2

0.2.2实验操作 2

0.2.3结果分析 2

0.2.4问题解决 2

0.3实验环境 2

0.4本书结构 3

0.5实验的知识体系 4

第1章 程序基本知识 8

1.1知识要点 8

1.1.1C+++程序的结构 8

1.1.2C+++输入输出的实现 8

1.2实验项目说明与实施方案 8

1.2.1实验项目说明 8

1.2.2实验实施方案 9

1.3实验项目案例分析 9

实验项目:字符串常量的输出 9

第2章 简单数据与运算 12

2.1知识要点 12

2.1.1字符集与词法记号 12

2.1.2C+++基本数据类型 13

2.1.3常量与变量 13

2.1.4运算符与表达式 13

2.1.5表达式中的类型转换 14

2.2实验项目说明与实施方案 14

2.2.1实验项目说明 14

2.2.2实验实施方案 16

2.3实验项目案例分析 17

2.3.1实验项目2-1:C+++中的逻辑运算 17

2.3.2实验项目2-2:C+++运算综合练习 20

2.4实验项目汇编 23

2.4.1实验项目2-3:C+++中基本数据类型的定义和输出 23

2.4.2实验项目2-4:C+++中基本数据类型的输入 23

2.4.3实验项目2-5:C+++中基本字符串变量的输入和输出 24

2.4.4实验项目2-6:C+++中整数的算术运算 25

2.4.5实验项目2-7:C+++中浮点类型数据的算术运算 25

2.4.6实验项目2-8:C+++中字符型数据的运算 26

2.4.7实验项目2-9:C+++中基本数据类型间的运算和类型转换 26

2.4.8实验项目2-10:C+++中的高级数学运算 27

2.4.9实验项目2-11:C+++中的位运算 28

2.4.10实验项目2-12:C+++中的sizeof运算 29

2.4.11实验项目2-13:C+++中字符串中的转义字符 29

第3章 流程控制 31

3.1知识要点 31

3.1.1选择语句 31

3.1.2循环语句 32

3.1.3其他控制语句 32

3.2实验项目说明与实施方案 32

3.2.1实验项目说明 32

3.2.2实验实施方案 34

3.3实验项目案例分析 34

3.3.1实验项目3-1:C+++流程控制应用 34

3.3.2实验项目3-2:逻辑运算与流程控制 39

3.4实验项目汇编 42

3.4.1实验项目3-3:基本的if语句和if-else语句 42

3.4.2实验项目3-4:基本分支结构 43

3.4.3实验项目3-5:for循环 43

3.4.4实验项目3-6:while循环和do-while循环 44

3.4.5实验项目3-7:break语句和continue语句 46

3.4.6实验项目3-8:基本的switch结构 46

第4章 复杂数据与运算 47

4.1知识要点 47

4.1.1数组 47

4.1.2指针 47

4.1.3字符串 49

4.2实验项目说明与实施方案 49

4.2.1实验项目说明 49

4.2.2实验实施方案 51

4.3实验项目案例分析 52

4.3.1实验项目4-1:使用指针访问字符串 52

4.3.2实验项目4-2:字符型数组与字符串 54

4.4实验项目汇编 57

4.4.1实验项目4-3:一维数组的声明、定义、初始化与访问 57

4.4.2实验项目4-4:多维数组的声明、定义、初始化与访问 58

4.4.3实验项目4-5:数组访问越界问题 59

4.4.4实验项目4-6:指针的基本使用 60

4.4.5实验项目4-7:指针的运算 61

4.4.6实验项目4-8:new和delete操作 61

4.4.7实验项目4-9:使用指针访问数组 62

4.4.8实验项目4-10:字符串的声明、定义、初始化与访问 62

4.4.9实验项目4-11:C+++中字符串的基本运算 63

4.4.10实验项目4-12:C+++中字符串相关函数 63

4.4.11实验项目4-13:C+++中字符串与其他数据类型的相互转换 64

4.4.12实验项目4-14:枚举类型 64

第5章 输入输出流 66

5.1知识要点 66

5.1.1流的含义 66

5.1.2I/O流类列表 67

5.1.3流对象 67

5.1.4输出控制 68

5.1.5文件流 68

5.2实验项目说明与实施方案 68

5.2.1实验项目说明 68

5.2.2实验实施方案 69

5.3实验项目案例分析 69

实验项目5-1:流文件(二进制文件)的读取与写入 69

5.4实验项目汇编 75

5.4.1实验项目5-2:输入输出的格式控制 75

5.4.2实验项目5-3:文本文件的读取与写人 76

第6章 函数基础 77

6.1知识要点 77

6.1.1函数的定义 77

6.1.2内联函数 77

6.1.3函数调用及参数传递 77

6.1.4函数的嵌套调用 78

6.1.5函数默认参数 78

6.1.6函数重载 78

6.1.7对象的生存期 78

6.2实验项目说明与实施方案 78

6.2.1实验项目说明 79

6.2.2实验实施方案 80

6.3实验项目案例分析 80

6.3.1实验项目6-1:函数的三种参数传递方式——传值、传指针和传引用 80

6.3.2实验项目6-2:函数在递归方法中的应用 85

6.4实验项目汇编 89

6.4.1实验项目6-3:无参函数的定义与调用 89

6.4.2实验项目6-4:带参函数的定义与调用 89

6.4.3实验项目6-5:参数带默认值的函数的定义与调用 90

6.4.4实验项目6-6:函数指针及参数为函数指针的函数 91

6.4.5实验项目6-7:函数重载 91

6.4.6实验项目6-8:局部变量、全局变量和静态变量 92

第7章 函数模板基础 93

7.1知识要点 93

7.1.1函数模板的定义 93

7.1.2函数模板实例化 93

7.2实验项目说明与实施方案 94

7.2.1实验项目说明 94

7.2.2实验实施方案 94

7.3实验项目案例分析 95

实验项目7-1:函数模板基础 95

7.4实验项目汇编 98

7.4.1实验项目7-2:显式函数模板实参 98

7.4.2实验项目7-3:函数模板实参的省略 99

第8章 结构体基础 101

8.1知识要点 101

8.2实验项目说明与实施方案 102

8.2.1实验项目说明 102

8.2.2实验实施方案 103

8.3实验项目案例分析 103

8.3.1实验项目8-1:结构体的更多细节 103

8.3.2实验项目8-2:结构体指针的更多细节 106

8.4实验项目汇编 108

8.4.1实验项目8-3:结构体的定义,对象的定义、赋值和基本访问 108

8.4.2实验项目8-4:结构体的成员函数 109

8.4.3实验项目8-5:结构体成员的访问权限 109

8.4.4实验项目8-6:结构体相关练习 110

8.4.5实验项目8-7:结构体的运算符重载 110

第9章类 112

9.1知识要点 112

9.1.1抽象和封装 112

9.1.2类的基本概念 112

9.1.3构造函数与析构函数 113

9.1.4友元函数与友元类 114

9.2实验项目说明与实施方案 114

9.2.1实验项目说明 114

9.2.2实验实施方案 116

9.3实验项目案例分析 116

9.3.1实验项目9-1:类的更多细节 116

9.3.2实验项目9-2:构造函数和析构函数基础 119

9.4实验项目汇编 122

9.4.1实验项目9-3:类的定义,对象的定义、赋值和基本访问 122

9.4.2实验项目9-4:类的成员函数 122

9.4.3实验项目9-5:类成员的访问权限基础 123

9.4.4实验项目9-6:拷贝构造函数 123

9.4.5实验项目9-7:类的构造函数专题 124

9.4.6实验项目9-8:字符串的其他构造方法 124

9.4.7实验项目9-9:类的友元函数 125

9.4.8实验项目9-10:友元类 125

9.4.9实验项目9-11:类的静态成员 126

第10章 运算符重载 127

10.1知识要点 127

10.1.1运算符重载的含义 127

10.1.2运算符重载的形式 127

10.1.3运算符重载为成员函数和友元函数 127

10.1.4不能重载的运算符 128

10.1.5内置操作符的规则 128

10.2实验项目说明与实施方案 128

10.2.1实验项目说明 128

10.2.2实验实施方案 129

10.3实验项目案例分析 130

10.3.1实验项目10-1:输入输出流运算符的重载 130

10.3.2实验项目10-2:其他运算符的重载 134

10.4实验项目汇编 139

10.4.1实验项目10-3:类的运算符重载基础 139

10.4.2实验项目10-4:逻辑运算符的重载 140

第11章 类的多态与重用 141

11.1知识要点 141

11.1.1类的组合 141

11.1.2类的继承 141

11.1.3类继承的访问权限 141

11.1.4类继承的构造函数与析构函数 142

11.1.5类继承的同名成员 142

11.1.6虚继承 142

11.1.7虚函数 143

11.1.8纯虚函数 143

11.2实验项目说明与实施方案 144

11.2.1实验项目说明 144

11.2.2实验实施方案 145

11.3实验项目案例分析 146

11.3.1实验项目11-1:虚函数 146

11.3.2实验项目11-2:虚基类及其多继承 152

11.4实验项目汇编 157

11.4.1实验项目11-3:类的组合 157

11.4.2实验项目11-4:类继承基础 158

11.4.3实验项目11-5:类继承的访问权限 159

11.4.4实验项目11-6:多继承 160

11.4.5实验项目11-7:纯虚函数与抽象类 160

第12章 类模板 161

12.1知识要点 161

12.1.1类模板的定义 161

12.1.2类模板的形参 161

12.1.3类模板的实例化 162

12.2实验项目说明与实施方案 162

12.2.1实验项目说明 162

12.2.2实验实施方案 163

12.3实验项目案例分析 163

实验项目12-1:模板类的继承与派生 163

12.4实验项目汇编 169

12.4.1实验项目12-2:类模板的定义与简单实现 169

12.4.2实验项目12-3:类模板的实例化 170

第13章C++标准库基础 171

13.1知识要点 171

13.1.1编译预处理和多文件组织 171

13.1.2泛型程序设计概述 172

13.1.3C+++中的容器类 172

13.1.4标准库中的迭代器 173

13.1.5C+++标准类库中的通用算法概述 174

13.2实验项目说明与实施方案 174

13.2.1实验项目说明 174

13.2.2实验实施方案 176

13.3实验项目案例分析 176

13.3.1实验项目13-1:链表基础 176

13.3.2实验项目13-2:C+++标准库的常规线性容器——链表和向量 185

13.4实验项目汇编 193

13.4.1实验项目13-3:多文件工程与编译预处理命令 193

13.4.2实验项目13-4:C+++标准库的特殊次序存取容器——栈、队列和双端队列 194

13.4.3实验项目13-5:C+++标准库的非线性容器 196

参考文献 199