当前位置:首页 > 工业技术
C++程序设计
C++程序设计

C++程序设计PDF电子书下载

工业技术

  • 电子书积分:14 积分如何计算积分?
  • 作 者:戴仕明,赵传申主编
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2009
  • ISBN:9787302196143
  • 页数:411 页
图书介绍:C++是一种面向对象的程序设计语言。本书从介绍面向对象程序方法入手,以没有学习过程序设计语言的初学者为对象,由浅入深并结合大量实例,介绍了Visual C++程序设计的原理及方法。
《C++程序设计》目录

第1章 C++概述 1

1.1 程序设计概述 1

1.1.1 程序设计方法 1

1.1.2 程序设计语言 2

自测题 5

1.2 从C到C++ 5

自测题 6

1.3 简单的C++程序介绍 6

自测题 9

1.4 C++程序的开发步骤 9

自测题 10

1.5 VC++程序的上机过程 10

1.5.1 VC++程序开发环境介绍 10

1.5.2 在VC++6.0环境中开发VC++程序 11

自测题 15

小结 15

编程项目 16

第2章 数据类型 17

2.1 基本数据类型 17

2.1.1 关键字 17

2.1.2 标识符 18

2.1.3 标点符号 18

2.1.4 分隔符 19

2.1.5 C++的基本数据类型 19

自测题 22

2.2 常量 22

2.2.1 整型常量 22

2.2.2 实型常量 23

2.2.3 字符型常量 24

2.2.4 字符串型常量 25

2.2.5 符号常量 26

自测题 27

2.3 变量 27

2.3.1 变量的命名 27

2.3.2 变量的声明 28

2.3.3 变量的赋值 29

2.3.4 变量的初始化 29

2.3.5 常数型变量 29

自测题 30

小结 31

编程项目 31

第3章 运算符和表达式 32

3.1 基本运算符 32

3.1.1 算术运算符 32

3.1.2 关系运算符 33

3.1.3 逻辑运算符 34

3.1.4 位运算符 35

3.1.5 赋值运算符 37

3.1.6 逗号运算符 38

3.1.7 三目运算符 39

3.1.8 自增、自减运算符 40

3.1.9 sizeof运算符 40

自测题 41

3.2 表达式 41

自测题 45

3.3 运算符优先级和结合性 45

自测题 46

3.4 类型转换 47

3.4.1 自动类型转换 47

3.4.2 强制类型转换 48

3.4.3 赋值转换 49

3.4.4 逻辑表达式求值的优化 49

自测题 49

小结 50

编程项目 50

第4章 C++的基本语句 51

4.1 C++语言的语句和程序结构 51

4.1.1 C++语句分类 51

4.1.2 程序的基本结构 53

自测题 54

4.2 选择结构语句 54

4.2.1 条件语句 54

4.2.2 条件运算符“?:” 58

4.2.3 开关语句 59

自测题 62

4.3 循环结构语句 63

4.3.1 while语句 63

4.3.2 do…while语句 64

4.3.3 for语句 66

4.3.4 三种循环语句的比较 68

4.3.5 循环的嵌套及其应用 68

自测题 69

4.4 控制执行顺序的语句 69

4.4.1 break语句 69

4.4.2 continue语句 70

4.4.3 goto语句 71

4.4.4 exit和abort函数 72

自测题 73

4.5 编程规范和编程风格 73

自测题 75

4.6 程序设计举例 75

自测题 79

小结 79

编程项目 79

第5章 函数和编译预处理 80

5.1 函数的基本概念 80

自测题 82

5.2 函数定义 82

5.2.1 无参函数的定义 82

5.2.2 有参函数的定义 82

5.2.3 函数定义的注意点 83

自测题 84

5.3 函数调用 84

5.3.1 函数调用的一般形式 84

5.3.2 函数调用的方式 84

5.3.3 函数调用的注意点 86

自测题 87

5.4 函数的参数传递和函数的返回值 87

5.4.1 函数的形式参数和实际参数 87

5.4.2 函数的返回值 88

自测题 89

5.5 函数声明 89

自测题 91

5.6 带默认形参值的函数 91

自测题 93

5.7 内联函数 94

自测题 95

5.8 函数的嵌套和递归调用 95

5.8.1 函数的嵌套调用 95

5.8.2 函数的递归调用 96

自测题 100

5.9 作用域和存储类型 100

5.9.1 作用域 100

5.9.2 局部变量与全局变量 103

5.9.3 动态与静态变量 105

5.9.4 变量的存储类型 106

自测题 110

5.10 函数的重载 111

自测题 114

5.11 编译预处理 114

5.11.1 包含文件 115

5.11.2 不带参数的宏定义 116

5.11.3 带参数的宏定义 117

5.11.4 条件编译 118

自测题 119

5.12 程序的多文件组织 119

5.12.1 内部函数和外部函数 120

5.12.2 程序的多文件组织方法 120

5.12.3 多文件组织的编译和连接 121

自测题 121

小结 121

编程项目 123

第6章 数组 124

6.1 一维数组的定义及应用 124

6.1.1 一维数组的定义 124

6.1.2 一维数组的初始化 125

6.1.3 一维数组存储 126

6.1.4 一维数组元素的引用 127

6.1.5 一维数组应用 128

自测题 131

6.2 多维数组的定义及使用 131

6.2.1 二维数组的定义 131

6.2.2 二维数组的初始化 132

6.2.3 二维数组的存储 134

6.2.4 二维数组元素的引用 135

6.2.5 二维数组的应用 136

自测题 139

6.3 字符数组的定义和使用 139

6.3.1 字符串 139

6.3.2 字符数组 140

自测题 142

6.4 字符串处理函数 142

自测题 144

6.5 字符数组的应用举例 144

自测题 147

小结 147

编程项目 147

第7章 结构体、共用体和枚举型 148

7.1 结构体的定义及应用 148

7.1.1 结构体类型的定义 148

7.1.2 结构体类型变量的定义 149

7.1.3 结构体类型变量的使用 151

7.1.4 结构体数组 154

自测题 156

7.2 共用体的定义及应用 156

7.2.1 共用体类型的说明 156

7.2.2 共用体类型变量的说明及使用 157

自测题 158

7.3 枚举类型 158

7.3.1 枚举类型的说明 159

7.3.2 枚举类型变量的使用 160

自测题 163

小结 164

编程项目 164

第8章 指针和引用 165

8.1 指针和指针变量 165

8.1.1 指针的概念 165

8.1.2 指针变量的说明 166

自测题 167

8.2 指针运算 167

8.2.1 指针的赋值运算 167

8.2.2 指针的算术运算 169

8.2.3 指针的关系运算 170

自测题 172

8.3 指针和数组 172

8.3.1 指针与一维数组 172

8.3.2 指针与多维数组 173

8.3.3 指针和字符串 176

自测题 177

8.4 指针数组和多级指针 177

8.4.1 指针数组 177

8.4.2 指向一维数组的指针变量 179

8.4.3 多级指针 180

自测题 181

8.5 指针和函数 182

8.5.1 指针作为函数的参数 182

8.5.2 返回指针的函数 185

8.5.3 指向函数的指针 186

8.5.4 带参数的main()函数 189

自测题 190

8.6 new和delete运算符 190

8.6.1 new和delete运算符的用法 190

8.6.2 使用new和delete运算符的注意事项 193

自测题 193

8.7 引用类型和其他类型的指针 194

8.7.1 引用类型变量的说明和使用 194

8.7.2 函数的引用传递 195

8.7.3 const类型变量 196

8.7.4 void型指针 198

自测题 199

8.8 简单链表 200

8.8.1 链表概述 200

8.8.2 建立链表 200

8.8.3 链表的输出 201

8.8.4 链表的插入 202

8.8.5 链表的删除 204

自测题 207

8.9 类型定义 207

自测题 208

小结 208

编程项目 209

第9章 类和对象 210

9.1 面向对象的程序设计概述 210

9.1.1 面向对象程序设计概念 210

9.1.2 面向对象程序设计的特点 212

9.1.3 类和对象的作用 212

9.1.4 面向对象的软件开发 213

自测题 214

9.2 类的声明和对象的定义 214

9.2.1 类和对象的关系 214

9.2.2 类的定义 214

9.2.3 对象的定义 216

9.2.4 类和对象的作用域 217

9.2.5 类和结构体类型的异同 218

自测题 219

9.3 类的成员函数 219

9.3.1 成员函数的性质 220

9.3.2 在类外定义成员函数 221

9.3.3 内联成员函数 221

9.3.4 成员函数的存储方式 223

自测题 225

9.4 对象成员的引用 225

9.4.1 通过对象名和成员运算符访问对象中的成员 225

9.4.2 通过指向对象的指针访问对象中的成员 227

9.4.3 通过对象的引用访问对象中的成员 227

自测题 228

9.5 类的封装性和信息隐藏 228

9.5.1 公用接口和私有实现的分离 228

9.5.2 类声明和成员函数定义的分离 229

自测题 231

9.6 this指针 231

自测题 232

小结 233

编程项目 233

第10章 构造函数和析构函数 235

10.1 构造函数 235

10.1.1 定义构造函数 235

10.1.2 对象的初始化 236

10.1.3 构造函数的作用 237

10.1.4 带参数的构造函数 238

10.1.5 用参数初始化列表对数据成员初始化 240

10.1.6 默认的构造函数 241

10.1.7 构造函数的重载 242

自测题 244

10.2 析构函数 244

10.2.1 析构函数的定义 245

10.2.2 默认的析构函数 247

10.2.3 不同存储类型的对象调用构造函数及析构函数 247

自测题 247

10.3 调用构造函数和析构函数的顺序 248

自测题 250

10.4 对象数组和对象指针 251

10.4.1 对象数组 251

10.4.2 对象指针 252

自测题 254

10.5 共用数据的保护 255

10.5.1 常对象 255

10.5.2 对象成员 255

10.5.3 指向对象的常指针 256

10.5.4 指向常对象的指针变量 257

10.5.5 对象的常引用 258

自测题 258

10.6 对象的动态建立和释放 259

自测题 259

10.7 对象的赋值和复制 260

10.7.1 对象的赋值 260

10.7.2 对象的复制 260

自测题 262

10.8 静态成员 262

10.8.1 静态数据成员 263

10.8.2 静态成员函数 264

自测题 265

10.9 友元 265

10.9.1 友元函数 265

10.9.2 友元类 268

自测题 270

小结 270

编程项目 271

第11章 继承和派生 272

11.1 继承和派生的概念 272

11.1.1 基本概念 272

11.1.2 单一继承 273

11.1.3 多重继承 274

自测题 277

11.2 派生类成员的访问属性 277

11.2.1 公有继承 277

11.2.2 私有继承 279

11.2.3 保护成员和保护继承 280

11.2.4 多级派生时的访问属性 281

自测题 282

11.3 派生类的构造函数和析构函数 283

11.3.1 简单的派生类的构造函数 283

11.3.2 有成员对象的派生类的构造函数 284

11.3.3 多级派生和多重继承的构造函数 286

11.3.4 派生类构造函数的特殊形式 288

11.3.5 派生类的析构函数 289

11.3.6 多重继承的二义性问题 293

自测题 296

11.4 虚基类 296

自测题 298

11.5 子类型关系 298

自测题 301

小结 302

编程项目 303

第12章 多态性和虚函数 304

12.1 多态性的概念 304

自测题 305

12.2 虚函数 305

12.2.1 虚函数的作用 305

12.2.2 静态关联和动态关联 306

12.2.3 虚函数的使用 308

12.2.4 虚析构函数 311

自测题 312

12.3 纯虚函数和抽象类 313

12.3.1 纯虚函数 313

12.3.2 抽象类 313

12.3.3 应用实例 313

自测题 316

小结 317

编程项目 317

第13章 运算符重载 318

13.1 运算符重载 318

13.1.1 运算符重载的概念 318

13.1.2 运算符重载的方法和规则 319

自测题 322

13.2 重载运算符 322

13.2.1 重载双目运算符 322

13.2.2 重载单目运算符 324

自测题 328

13.3 重载流插入和流提取运算符 328

13.3.1 重载流插入运算符“<<” 328

13.3.2 重载流提取运算符“>>” 329

自测题 331

13.4 几种特殊运算符的重载 331

13.4.1 重载下标运算符 331

13.4.2 重载new和delete运算符 333

13.4.3 重载函数调用运算符“()” 334

自测题 335

13.5 不同类型数据间的转换 335

13.5.1 标准类型数据间的转换 336

13.5.2 转换构造函数 336

13.5.3 类型转换函数 337

自测题 338

13.6 字符串类 338

自测题 341

小结 341

编程项目 342

第14章 输入/输出流与文件操作 343

14.1 流的概念 343

自测题 345

14.2 基本I/O流类体系概述 345

14.2.1 基本I/O流类体系 345

14.2.2 预定义的标准输入/输出流 346

自测题 347

14.3 流的格式控制与标准输入/输出 348

14.3.1 流的格式控制 348

14.3.2 标准输出的控制格式 349

14.3.3 标准输入的控制格式 353

自测题 359

14.4 文件流和文件操作 360

14.4.1 文件的概念 360

14.4.2 文件流类体系和文件流 361

14.4.3 文件的打开与关闭 362

14.4.4 文本文件的使用 365

14.4.5 二进制文件的使用 369

自测题 375

小结 375

编程项目 376

第15章 模板 377

15.1 模板的概念 377

自测题 378

15.2 函数模板 378

15.2.1 函数模板的定义 378

15.2.2 函数模板的使用和实例化 379

15.2.3 函数模板的重载 380

15.2.4 函数模板与宏和函数重载的比较 381

自测题 382

15.3 类模板 382

15.3.1 类模板的定义 382

15.3.2 类模板的实例化 383

自测题 385

小结 385

编程项目 385

第16章 异常处理 386

16.1 异常的概念 386

自测题 387

16.2 C++的异常处理机制 387

16.2.1 抛出异常 388

16.2.2 try块 388

16.2.3 捕获和处理异常 389

16.2.4 异常处理的执行过程 390

自测题 392

16.3 异常对象 392

16.3.1 类异常的定义和异常对象的使用 392

16.3.2 异常处理中对象的构造和析构 394

自测题 400

16.4 异常的重新抛出与嵌套处理 400

自测题 403

16.5 异常规范 403

自测题 404

小结 405

编程项目 405

附录1 ASCII码表 406

附录2 常用的库函数 407

参考文献 411

相关图书
作者其它书籍
返回顶部