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

  • 购买积分:11 如何计算积分?
  • 作  者:刘振安编著
  • 出 版 社:北京:科学出版社
  • 出版年份:2005
  • ISBN:7030134605
  • 页数:279 页
图书介绍:本书根据高职高校的特点,进行合理取舍,把重点放在程序设计方法上,将内容划分为2大部分:面向过程和面向对象。

第1章 面向对象程序设计基础知识 1

1.1面向过程的程序设计方法 1

1.1.1 自然语言与计算机语言之间的鸿沟 1

1.1.2面向过程与结构化程序设计 2

1.2面向对象的程序设计方法 5

1.3面向对象语言的发展 7

1.4 C++的面向过程和面向对象程序设计 8

1.5 C++面向对象程序设计特点 9

1.5.1 对象 9

1.5.2抽象和类 10

1.5.3封装 11

1.6.1数据对象、变量和常量 12

1.6数据对象和数据类型 12

1.5.5 多态性 12

1.5.4继承 12

1.6.2数据类型 14

1.6.3基本数据类型的实现 14

1.7本书的结构 15

1.8 习题 16

第2章 C++程序设计基础 17

2.1 C++的基本数据类型和表达式 17

2.1.1初识C++的函数和对象 17

2.1.2标识符 20

2.1.3变量对象 21

2.1.4基本数据类型 21

2.1.5变量对象的存储类型 22

2.1.6常量对象 26

2.1.7匈牙利命名法 28

2.1.8算术运算符和运算表达式 29

2.1.9赋值运算符与赋值表达式 30

2.1.10逗号运算符与逗号表达式 32

2.2面向对象的标记图 32

2.2.1类和对象的UML标记图 32

2.2.2表示对象的结构与连接 33

2.2.3使用实例 35

2.2.4对象、类和消息 36

2.3使用类和对象实例 37

2.3.1使用C++的string对象 37

2.3.2使用string类的典型成员函数实例 38

2.3.3使用对象小结 40

2.4典型例题及错误分析 40

2.4.1典型例题 40

2.4.2初学者最容易出现的语法错误 41

2.4.3容易出现的其他错误 42

2.5程序的编辑、编译和运行的基本概念 44

2.6实验如何编辑、编译、调试和运行一个实际程序 45

2.7 习题 45

第3章 结构化编程基础 47

3.1 典型C++程序结构 47

3.1.1函数和函数原型 48

3.1.2 const修饰符和预处理程序 49

3.1.3程序注释 50

3.1.4程序语句 51

3.1.5大小写字母的使用 53

3.1.6程序的书写格式 53

3.1.7数据的简单输入输出格式 53

3.2关系运算与逻辑运算 57

3.4.1用if语句实现选择结构设计 59

3.3结构化程序设计概述 59

3.4控制选择结构 59

3.4.2用switch语句实现选择结构设计 63

3.5循环控制结构设计 64

3.5.1while语句 64

3.5.2 do while语句 66

3.5.3 for语句 67

3.5.4 break语句、countinue语句及goto语句 68

3.5.5控制语句的嵌套 70

3.6典型例题及错误分析 71

3.6.1典型例题 71

3.6.2错误分析 74

3.7实验编程调试实验 77

3.8习题 77

4.1.1构造指针类型 79

第4章 构造类型初探 79

4.1 指针 79

4.1.2指针类型及指针运算 81

4.1.3对指针使用const限定符 83

4.1.4进一步讨论指针 85

4.2引用 87

4.3数组 89

4.3.1 一维数组 89

4.3.2数组与指针的关系 92

4.3.3多维数组 93

4.3.4字符串数组和string对象 95

4.3.5指针数组 96

4.3.6命令行参数 97

4.4类型定义关键字typedef 97

4.5枚举 98

4.6.1 结构定义及其对象的初始化 99

4.6结构 99

4.6.2 结构数组 100

4.6.3结构指针 101

4.6.4动态分配内存 103

4.7联合 103

4.8使用数组与指针易犯的错误 104

4.8.1数组使用错误 104

4.8.2指针使用不当 104

4.9实验综合实验 107

4.10习题 108

5.1函数基础知识 110

5.1.1函数基本要素 110

第5章 函数和函数模板 110

5.1.2函数调用形式 112

5.1.3递归调用 114

5.2函数参数的传递方式 114

5.2.1传值和传地址 115

5.2.2传引用方式 116

5.2.3默认参数 116

5.2.4 正确选择函数原型及传递参数 117

5.3深入讨论函数返回值 121

5.3.1返回引用的函数 121

5.3.2返回指针的函数 122

5.3.3返回对象的函数 123

5.3.4函数返回值作为参数 124

5.4内联函数 124

5.5函数重载 125

5.6函数模板 126

5.7.1计算机解题 128

5.7解题和算法描述 128

5.7.2常用过程设计的算法描述方法 131

5.8综合实例 132

5.9错误分析 135

5.10文件中的函数调用 136

5.10.1 使用多个文件进行模块化设计 136

5.10.2头文件和函数原型的作用 138

5.10.3组合为一个工程项目 138

5.10.4使用文件包含的方法 140

5.10.5#define和const的异同 140

5.11实验编辑多文件程序实验 141

5.12习题 142

6.1.1 定义类 144

第6章 对象和类的基础知识 144

6.1类及其实例化 144

6.1.2使用类的对象 147

6.1.3数据封装 150

6.1.4成员函数重载及默认参数 151

6.1.5 this指针 152

6.1.6一个类的对象作为另一个类的成员 152

6.2类和对象的性质 154

6.2.1对象的性质 154

6.2.2类的性质 155

6.3结构和联合 157

6.4面向对象编程的文件规范 158

6.4.1编译指令 158

6.5实验使用类和对象的实验 160

6.4.2编写类的头文件 160

6.6习题 161

第7章 类和类模板 163

7.1构造函数 163

7.1.1定义构造函数 163

7.1.2构造函数和运算符new 165

7.1.3默认构造函数和默认参数 165

7.1.4复制构造函数 167

7.2析构函数 167

7.2.1定义析构函数 168

7.2.2析构函数和运算符delete 168

7.2.3默认析构函数 169

7.3调用复制构造函数 169

7.4重载对象的赋值运算符 172

7.5对象成员的初始化 175

7.6类模板 177

7.7容易混淆的问题 180

7.8实验使用包含构造新类 180

7.9习题 181

第8章 继承和派生 182

8.1继承和派生的基本概念 182

8.2单一继承 184

8.2.1单一继承的一般形式 184

8.2.2派生类的构造函数和析构函数 184

8.2.3类的保护成员 186

8.2.4访问权限和赋值兼容规则 187

8.3继承类模板 192

8.4多重继承 196

8.5.1 二义性和作用域分辨符 197

8.5二义性及其支配规则 197

8.5.2派生类支配基类的同名函数 199

8.6典型问题分析 200

8.7实验公有派生的赋值兼容性规则 201

8.8习题 201

第9章 多态性和虚函数 202

9.1 多态性 202

9.1.1静态联编中的赋值兼容性及名字支配规律 202

9.1.2动态联编的多态性 204

9.2虚函数 206

9.2.1虚函数的定义 206

9.2.2虚函数实现多态性的条件 206

9.2.3进一步探讨虚函数与实函数的区别 208

9.2.4构造函数和析构函数调用虚函数 211

9.2.5纯虚函数与抽象类 213

9.3多重继承与虚函数 215

9.4容易混淆的问题 216

9.5实验虚函数与多态性 216

9.6习题 217

第10章 类的成员和对象 219

10.1静态成员 219

10.2友元函数 222

10.3 const对象和volatile对象 226

10.4数组和类 230

10.5实验友元函数和常对象性质实验 232

10.6习题 233

11.1.1运算符重载的实质 234

11.1.2类运算符和友元运算符的异同 234

第11章 运算符重载及流类库 234

11.1运算符重载 234

11.1.3++和--运算符的重载 237

11.2流类库 239

11.2.1流类库的基本类等级 239

11.2.2运算符“<<”和“>>”的重载 240

11.2.3格式控制 242

11.3文件操作 244

11.3.1文件操作方式 244

11.3.2常用输出文件流成员函数 245

11.3.3二进制输出文件 248

11.3.4常用输入流及其成员函数 248

11.3.5文件读写综合实例 252

11.4实验文件综合实验 255

11.5习题 256

12.1过程抽象和数据抽象 257

第12章 面向对象课程设计 257

12.2发现对象并建立对象层 258

12.3定义数据成员和成员函数 260

12.4如何发现基类和派生类结构 262

12.5接口继承与实现继承 263

12.6链表 266

12.6.1简单的链表实例 266

12.6.2改进封装性的实例 268

12.7实验改进链表实验 271

12.8习题 271

附录A 按字母表顺序排序的C和C++保留字 273

附录B C语言关键字 274

附录C C语言的printf格式输出函数 275

附录D C语言的scanf格式输入函数 277

附录E 主要参考文献 279