《面向对象程序设计与Visual C++ 6.0教程》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:陈天华编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2006
  • ISBN:730212311X
  • 页数:414 页
图书介绍:全书较系统地叙述了C++面向对象程序设计基本思想与方法,绝大多数程序均有要点分析,详细剖析了程序设计的难点、要点和创新点。各章后均附有习题。

目录 1

第1章 面向对象程序设计概述 1

1.1 计算机程序设计语言的发展 1

1.1.1 机器语言 1

1.1.2 汇编语言 2

1.1.3 高级语言 2

1.1.4 面向对象语言 3

1.2.2 面向对象的方法与结构 4

1.2.1 面向对象方法的产生 4

1.2 面向对象程序设计的基本概念 4

1.2.3 类与对象的概念 5

1.2.4 消息与事件的概念 6

1.3 面向对象程序设计的特点 7

1.3.1 抽象性 7

1.3.2 封装性 8

1.3.3 继承性 8

1.3.4 多态性 9

1.3.5 C++的面向对象特性 10

1.4.1 混合型面向对象语言——C++ 11

1.4 面向对象的程序设计语言 11

1.4.2 Java语言 12

1.4.3 Visual Basic语言 12

1.5 Visual C++概述 13

1.5.1 Visual C++6.0 13

1.5.2 Visual C++.NET 14

1.6 面向对象的软件开发 16

1.6.1 面向对象分析 16

1.6.2 面向对象设计 16

1.6.3 面向对象编程 17

1.7 本章小结 18

1.6.4 面向对象测试 18

1.6.5 面向对象软件维护 18

1.8 思考与练习题 19

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

2.1 C++语言概述 21

2.1.1 C++的产生 21

2.1.2 C++的特点 22

2.1.3 C++的字符集 22

2.1.4 C++程序的组成 23

2.2.1 基本数据类型 26

2.2 数据类型 26

2.2.2 常量 27

2.2.3 变量 30

2.2.4 符号常量 34

2.3 运算符与表达式 35

2.3.1 表达式 35

2.3.2 运算符及性质 36

2.3.3 运算符的优先级 42

2.3.4 混合运算时数据类型的转换 43

2.4.2 插入运算符和提取运算符 45

2.4 简单的输入与输出 45

2.4.1 I/O流 45

2.4.3 简单的I/O格式 46

2.5 程序的基本控制结构 46

2.5.1 顺序结构 46

2.5.2 选择结构 46

2.5.3 循环结构 52

2.6 自定义数据类型 56

2.6.1 结构类型 56

2.6.2 联合类型 58

2.6.3 枚举类型 60

2.6.4 typedef的应用 62

2.7 本章小结 63

2.8 思考与练习题 64

第3章 函数 66

3.1 函数的定义与使用 66

3.1.1 函数的定义 67

3.1.2 函数的调用 67

3.1.3 函数原型 69

3.2 函数的参数传递 70

3.2.1 传值调用 71

3.2.2 传地址调用 72

3.2.3 引用调用 73

3.3 函数的嵌套与递归调用 74

3.3.1 函数的嵌套调用 74

3.3.2 函数的递归调用 75

3.4 函数的其他问题 78

3.4.1 内联函数 78

3.4.2 函数重载的概念 79

3.4.3 带默认参数的函数 80

3.5 C++的系统函数 82

3.6 作用域与存储类型 83

3.6.1 作用域 83

3.6.2 存储类型 86

3.6.3 生存期 86

3.7 全局变量与局部变量 87

3.7.1 全局变量 87

3.7.2 局部变量 87

3.8 头文件与多文件结构 88

3.8.1 头文件 89

3.8.2 多文件结构 89

3.9 编译预处理 90

3.9.1 宏定义 91

3.9.2 文件包含指令 91

3.9.3 条件编译 91

3.10 本章小结 93

3.11 思考与练习题 93

4.1 类 95

4.1.1 类的定义 95

第4章 类与对象 95

4.1.2 访问控制 97

4.2 成员函数 98

4.2.1 成员函数的定义 98

4.2.2 内联成员函数 99

4.3 对象 100

4.3.1 对象的定义 101

4.3.2 类成员的访问 101

4.4.1 构造函数 104

4.4 构造函数与析构函数 104

4.4.2 析构函数 106

4.4.3 复制构造函数 111

4.4.4 浅复制与深复制 116

4.5 静态成员 120

4.5.1 静态成员的定义与引用 120

4.5.2 静态数据成员 120

4.5.3 静态成员函数 122

4.6 友元 124

4.6.1 友元的作用 124

4.6.2 友元函数 124

4.6.3 友元类 126

4.7 类作用域及对象的生存期 127

4.7.1 类作用域 127

4.7.2 对象的生存期 128

4.8 名空间 129

4.8.1 名空间的定义 129

4.8.2 名空间成员的访问 130

4.8.3 名空间的应用 130

4.9 常类型 132

4.9.1 常引用 132

4.9.2 常对象 133

4.9.3 常对象成员 134

4.10 本章小结 137

4.11 思考与练习题 138

第5章 数组与指针 143

5.1 数组 143

5.1.1 一维数组 143

5.1.2 二维数组 148

5.1.3 对象数组 151

5.2 指针 153

5.2.2 指针变量的定义 154

5.2.1 内存空间的访问方式 154

5.2.3 “*”和“&”运算符 155

5.2.4 指针的赋值 156

5.3 指针运算 157

5.3.1 指针的算术运算 157

5.3.2 指针的关系运算 158

5.4 指针与数组 159

5.4.1 一维数组元素的指针表示 159

5.4.2 二维数组元素的指针表示 161

5.4.3 指针数组 162

5.5 指针与函数 163

5.5.1 指针作为函数参数 163

5.5.2 指针型函数 165

5.5.3 指向函数的指针 166

5.6 指针与字符串 167

5.6.1 使用指针访问字符串 167

5.6.2 字符指针作为函数参数 168

5.7 对象指针 169

5.7.1 对象指针的概念 169

5.7.3 类成员函数的指针 170

5.7.2 类数据成员的指针 170

5.7.4 this指针 172

5.8 动态内存分配 173

5.8.1 new运算符 173

5.8.2 delete运算符 174

5.9 本章小结 176

5.10 思考与练习题 177

6.1.1 继承的层次结构 179

6.1 继承与派生的概念 179

第6章 继承与派生 179

6.1.2 继承的作用 180

6.2 派生类 181

6.2.1 派生类的定义 181

6.2.2 派生类的生成过程 185

6.3 访问权限控制 185

6.3.1 公有继承 186

6.3.2 私有继承 188

6.3.3 保护继承 189

6.4.1 派生类的构造函数 192

6.4 派生类的构造函数和析构函数 192

6.4.2 派生类的析构函数 195

6.5 多继承 196

6.5.1 多继承的定义 196

6.5.2 多继承的构造函数 197

6.5.3 多继承的析构函数 199

6.5.4 虚基类 202

6.6 赋值兼容规则 205

6.7 程序实例 208

6.8 本章小结 213

6.9 思考与练习题 214

第7章 多态性 217

7.1 多态性的实现类型 217

7.2 联编 218

7.2.1 静态联编 218

7.2.2 动态联编 220

7.3 虚函数 220

7.3.1 虚函数的声明 221

7.3.2 虚函数的调用 221

7.3.3 虚析构函数 224

7.4 抽象类 226

7.4.1 纯虚函数的定义 227

7.4.2 抽象类的使用 227

7.5 函数重载 229

7.6 运算符重载 231

7.6.1 运算符重载规则 231

7.6.2 运算符重载为成员函数 232

7.6.3 运算符重载为友元函数 240

7.7 综合设计举例 242

7.9 思考与练习题 246

7.8 本章小结 246

第8章 模板 248

8.1 模板概述 248

8.2 函数模板 249

8.2.1 函数模板的定义 249

8.2.2 函数模板的使用 250

8.2.3 模板函数的生成 252

8.3 类模板 252

8.3.1 类模板的定义 252

8.3.2 类模板的使用 254

8.3.3 类模板的友元 256

8.4 STL简介 259

8.4.1 STL和C++标准库 260

8.4.2 容器 261

8.4.3 算法 262

8.4.4 迭代器 263

8.4.5 函数对象 264

8.5 STL应用实例 265

8.6 本章小结 269

8.7 思考与练习题 269

9.1.1 I/O流的概念 271

第9章 I/O流库 271

9.1 I/O流库的层次结构 271

9.1.2 ios类的层次关系 272

9.1.3 streambuf类的层次关系 273

9.2 输入与输出的格式控制 273

9.2.1 ios类成员函数的格式控制 273

9.2.2 操作符函数的格式控制 277

9.2.3 自定义操作符函数的格式化 278

9.3 文件的输入与输出 280

9.3.1 文件的打开与关闭 281

9.3.2 ifstream、ofstream和fstream类 282

9.3.3 文本文件的输入与输出 283

9.3.4 二进制文件的输入与输出 286

9.4 自定义数据类型的输入与输出 289

9.4.1 输出运算符重载 289

9.4.2 输入运算符重载 291

9.5 本章小结 293

9.6 思考与练习题 293

10.1 异常处理的任务与思想 296

10.1.1 传统的异常处理方法 296

第10章 异常处理 296

10.1.2 C++的异常处理机制 298

10.2 C++异常处理的实现 298

10.2.1 异常处理的语法 299

10.2.2 异常处理接口 302

10.3 异常处理中的构造与析构 303

10.4 C++标准异常类 305

10.5 本章小结 309

10.6 思考与练习题 309

11.1.1 Visual C++环境介绍 311

11.1 Visual C++编程基础 311

第11章 Visual C++应用简介 311

11.1.2 Visual C++的菜单功能 313

11.1.3 Visual C++的工具栏 317

11.1.4 项目和项目工作区 318

11.2 Windows编程概述 319

11.2.1 多任务和多线程 319

11.2.2 事件驱动原理 320

11.2.3 Windows编程的基本概念 320

11.2.5 Windows资源 323

11.2.4 GDI简介 323

11.2.6 常用数据结构 324

11.2.7 Windows标识符的命名方法 326

11.3 用MFC向导创建Windows应用程序 326

11.3.1 MFC类库简介 327

11.3.2 MFC类库的常用类 327

11.3.3 MFC应用程序的类型 331

11.3.4 用AppWizard向导创建MFC应用程序 332

11.4 本章小结 338

11.5 思考与练习题 338

12.1.1 MFC消息的种类 339

第12章 MFC典型应用程序设计 339

12.1 消息处理机制 339

12.1.2 MFC消息的映射机制 340

12.2 应用程序分析 341

12.2.1 AppWizard向导生成的类和文件 342

12.2.2 应用程序的运行机制 343

12.3 输入与输出处理程序 345

12.3.1 文本输出程序 345

12.3.2 键盘输入处理程序 347

12.3.3 鼠标处理程序 351

12.4.2 菜单资源编辑器 355

12.4 菜单应用程序设计 355

12.4.1 菜单简介 355

12.4.3 菜单应用实例 357

12.5 工具栏应用程序设计 364

12.5.1 工具栏简介 364

12.5.2 使用资源编辑器创建工具栏 364

12.5.3 工具栏应用实例 366

12.6 状态栏应用程序设计 367

12.6.1 状态栏的实现 367

12.6.2 状态栏应用实例 368

12.7.1 对话框的分类 372

12.7 对话框应用程序设计 372

12.7.2 常用对话框类 373

12.7.3 对话框的常用函数 374

12.7.4 对话框应用实例 374

12.8 控件应用程序设计 382

12.8.1 控件简介 382

12.8.3 创建控件 383

12.8.4 控件应用实例 383

12.8.2 常用控件类 383

12.9 数据库应用程序设计 390

12.9.1 ODBC技术 390

12.9.2 ADO技术 391

12.9.3 数据库应用实例 391

12.10 本章小结 406

12.11 思考与练习题 407

附录A Visual C++程序的调试方法 408

附录B ASCII码字符集 413

参考文献 414