C++面向对象程式设计(第3版)

生活百科 2023-01-25 19:31生活百科www.aizhengw.cn

C++面向对象程式设计(第3版)

本书以C++ 11标準为指导,深入浅出地介绍了标準C++面向对象程式设计的相关知识,以及用Visual C++进行面向对象的Windows程式设计的基本原理和方法,包括C++对C语言的扩展、类、对象、友元、继承、多态性、虚函式、重载、I/O流类库、档案、模板与STL、C++ Windows程式的结构、讯息驱动、MFC应用程式框架、GDI、选单、对话框、工具列、文档与视图等内容。

基本介绍

  • 书名C++面向对象程式设计(第3版)
  • 作者杜茂康,谢青
  • ISBN9787121315831
  • 类别软体工程
  • 页数424
  • 出版时间2017-06
  • 开本16开

基本信息

C++面向对象程式设计(第3版)
作 译 者杜茂康,谢青
出版时间2017-06
千 字 数740
版 次01-01
页 数424
开 本16开
I S B N 9787121315831

内容简介

本书以C++ 11标準为指导,深入浅出地介绍了标準C++面向对象程式设计的相关知识,以及用Visual C++进行面向对象的Windows程式设计的基本原理和方法,包括C++对C语言的扩展、类、对象、友元、继承、多态性、虚函式、重载、I/O流类库、档案、模板与STL、C++ Windows程式的结构、讯息驱动、MFC应用程式框架、GDI、选单、对话框、工具列、文档与视图等内容。全书本着易于理解、实用性强的原则设计其内容和案例,并以一个规模较大的综合性程式的编制贯穿于C++面向对象技术和Windows程式设计的全过程,引导读者理解和掌握面向对象程式设计的思想、技术、方法,以及在Windows程式中套用自定义类实现程式功能的软体开发方法。本书取材新颖,内容全面,通俗易懂,可作为高等院校计算机、电子信息类专业及其他理工类相关专业的教材,也可作为C++语言自学者或程式设计人员的参考用书。

目录信息

第1章 C++与面向对象程式设计概述 1
1.1 面向过程和面向对象程式设计 1
1.2 面向对象程式语言的特徵 3
1.3 C++与面向对象程式设计 5
1.3.1 C++简史 6
1.3.2 C++的特点 7
1.3.3 C++程式的结构 7
1.3.4 标準C++程式设计 9
1.4 数据的输入和输出 11
1.4.1 C++的数据类型 11
1.4.2 流的概念 12
1.4.3 cin和提取运算符>> 12
1.4.4 cout和插入运算符<< 14
1.4.5 输出格式控制符 16
1.4.6 数制基数 17
1.4.7 string与字元串输入/输出 18
1.4.8 数据输入的典型问题 19
1.5 编程实作——Visual C++ 2015编程简介 24
习题1 26
第2章 C++基础 28
2.1 C++对C语言数据类型的扩展 28
2.2 左值、右值及C++对局部变数声明的改进 29
2.2.1 左值和右值 29
2.2.2 C++局部变数的声明与定义 29
2.3 指针 30
2.3.1 指针概念的回顾 30
2.3.2 空指针、void以及获取数组首、尾元素位置的指针 31
2.3.3 new和delete 32
2.3.4 智慧型指针11C++ 34
2.4 引用 36
2.4.1 左值引用 36
2.4.2 右值引用11C++ 39
2.5 const和constexpr常量 40
2.5.1 常量的定义 40
2.5.2 const、constexpr与指针 41
2.5.3 const与引用 42
2.5.4 顶层const和底层const 43
2.6 auto和decltype类型11C++ 44
2.7 begin、end和基于範围的for循环11C++ 45
2.8 类型转换 46
2.9 函式 49
2.9.1 函式原型 49
2.9.2 函式参数传递的类型 50
2.9.3 函式默认参数 54
2.9.4 函式返回值 55
2.9.5 函式重载 57
2.9.6 函式与const和constexpr 60
2.9.7 内联函式 62
2.10 Lamada表达式11C++ 63
2.11 命名空间 65
2.12 预处理器 67
2.13 作用域和生命期 68
2.13.1 作用域 68
2.13.2 变数类型及生命期 70
2.13.3 初始化列表、变数初始化与赋值 71
2.13.4 局部变数与函式返回地址 73
2.14 档案输入和输出 73
2.15 编程实作 75
习题2 77
第3章 类和对象 81
3.1 类的抽象和封装 81
3.1.1 抽象 81
3.1.2 封装 83
3.2 struct和class 85
3.2.1 C++对struct的扩展 85
3.2.2 类(class) 87
3.3 数据成员 89
3.4 成员函式 90
3.4.1 成员函式定义方式和内联函式 90
3.4.2 常量成员函式 91
3.4.3 成员函式重载和默认参数值 92
3.5 对象 92
3.6 构造函式设计 95
3.6.1 构造函式和类内初始值 95
3.6.2 默认构造函式 97
3.6.3 重载构造函式 100
3.6.4 构造函式与初始化列表 102
3.6.5 委託构造函式11C++ 104
3.7 析构函式 105
3.8 赋值运算符函式、拷贝构造函式和移动函式设计 107
3.8.1 赋值运算符函式 107
3.8.2 拷贝构造函式 110
3.8.3 移动函式11C++ 113
3.9 静态成员 117
3.10 this指针 120
3.11 对象套用 124
3.12 类的作用域和对象的生存期 128
3.13 友元 131
3.14 编程实例类的接口与实现的分离 132
3.14.1 头档案 133
3.14.2 源档案 134
3.14.3 对类的套用 135
习题3 138
第4章 继承 142
4.1 继承的概念 142
4.2 protected和继承 143
4.3 继承方式 144
4.4 派生类对基类的扩展 147
4.4.1 成员函式的重定义和名字隐藏 147
4.4.2 基类成员访问 149
4.4.3 using和隐藏函式重现11C++ 149
4.4.4 派生类修改基类成员的访问许可权 150
4.4.5 友元与继承 151
4.4.6 静态成员与继承 152
4.4.7 继承和类作用域 154
4.5 构造函式和析构函式 155
4.5.1 派生类构造函式的建立规则 155
4.5.2 派生类构造函式和析构函式的调用次序 159
4.5.3 派生类的赋值、拷贝和移动操作 161
4.6 基类与派生类对象的关係 163
4.6.1 派生类对象对基类对象的赋值和初始化 163
4.6.2 派生类对象与基类对象的类型转换 165
4.7 多重继承 167
4.7.1 多重继承的概念和套用 167
4.7.2 多重继承方式下成员的二义性 169
4.7.3 多重继承的构造函式和析构函式 169
4.8 虚拟继承 171
4.9 继承和组合 175
4.10 编程实例 180
习题4 185
第5章 多态性 189
5.1 多态性概述 189
5.1.1 多态的概念 189
5.1.2 多态的意义 191
5.1.3 多态和联编 192
5.2 虚函式 192
5.2.1 虚函式的意义 192
5.2.2 override和final 11C++ 195
5.2.3 虚函式的特性 197
5.3 虚析构函式 201
5.4 纯虚函式和抽象类 202
5.4.1 纯虚函式和抽象类 202
5.4.3 抽象类的套用 204
5.4 运行时类型信息 210
5.4.1 dynamic_cast 211
5.4.2 typeid 214
5.5 编程实例 216
习题5 217
第6章 运算符重载 221
6.1 运算符重载基础 221
6.2 重载二元运算符 223
6.2.1 类与二元运算符重载 223
6.2.2 非类成员方式重载二元运算符的特殊用途 226
6.3 重载一元运算符 227
6.3.1 作为成员函式重载 228
6.3.2 作为友元函式重载 229
6.4 特殊运算符重载 230
6.4.1 运算符++和--的重载 230
6.4.2 下标[]和赋值运算符= 232
6.4.3 类型转换运算符 234
6.4.4 函式调用运算符重载 237
6.5 输入/输出运算符重载 238
6.6 编程实例 239
习题6 244
第7章 模板和STL 247
7.1 模板的概念 247
7.2 函式模板和模板函式 248
7.2.1 函式模板的定义 248
7.2.2 函式模板的实例化 249
7.2.3 模板参数 250
7.3 类模板 253
7.3.1 类模板的概念 253
7.3.2 类模板的定义 254
7.3.3 类模板实例化 255
7.3.4 类模板的使用 257
7.4 模板设计中的几个独特问题 258
7.4.1 内联与常量函式模板 258
7.4.2 默认模板实参 11C++ 259
7.4.3 成员模板 259
7.4.4 可变参数函式模板 11C++ 260
7.4.5 模板重载、特化、非模板函式及调用次序 261
7.4 STL 264
7.4.1 函式对象 264
7.4.2 顺序容器 265
7.4.3 叠代器 272
7.4.4 pair和tuple容器 273
7.4.5 关联式容器 276
7.4.6 算法 281
7.5 编程实例 284
习题7 286
第8章 异常 289
8.1 异常处理概述 289
8.2 C++异常处理基础 290
8.2.1 异常处理的结构 290
8.2.2 异常捕获 291
8.3 异常与函式 292
8.4 异常处理的几种特殊情况 294
8.5 异常和类 298
8.5.1 构造函式和异常 298
8.5.2 异常类 300
8.5.3 派生异常类的处理 303
习题8 305
第9章 流和档案 308
9.1 C++ I/O流及流类库 308
9.2 I/O成员函式 309
9.2.1 istream流中的常用成员函式 309
9.2.2 ostream流中的常用成员函式 311
9.2.3 数据输入、输出的格式控制 312
9.3 档案操作 315
9.3.1 档案和流 315
9.3.2 二进制档案 317
9.3.3 随机档案 321
习题9 322
第10章 C++ Windows程式设计基础 325
10.1 Windows程式设计基础 325
10.1.1 视窗 325
10.1.2 事件驱动和讯息回响 325
10.1.3 Windows程式的档案构成 326
10.1.4 Visual C++的Windows程式设计方法 327
10.2 Windows程式设计的常用数据结构 328
10.3 Windows程式的基本结构 331
10.4 Windows程式的控制流程 333
10.5 Windows程式的数据输出 338
10.6 讯息驱动程式设计 341
习题10 344
第11章 MFC程式设计 346
11.1 MFC程式基础 346
11.1.1 MFC类 346
11.1.2 MFC程式的结构 348
11.1.3 MFC程式的执行流程 350
11.1.4 讯息映射 352
11.2 应用程式框架 354
11.2.1 用嚮导建立应用程式框架 354
11.2.2 应用程式框架的结构 356
11.2.3 应用程式框架类之间的关係 363
11.3 MFC程式的数据输出 364
11.3.1 MFC中的图形类 364
11.3.2 绘图对象 366
11.3.3 用MFC嚮导添加讯息映射函式 368
11.3.4 OnPaint函式与输出 372
11.4 对话框 373
11.4.1 对话框的类型 373
11.4.2 用资源编辑器建立对话框 374
11.5 选单和工具列 379
11.5.1 直接修改应用程式框架的选单 379
11.5.2 建立新选单栏 382
11.5.3 工具列操作 383
11.6 视图与文档 384
习题11 387
第12章 MFC综合程式设计 389
12.1 在应用程式框架中包含并修改自定义类 389
12.2 在事件函式中操作类对象 391
12.3 添加对话框 394
12.4 添加程式选单 396
12.5 文档序列化 399
习题12 409
参考文献 410

Copyright@2015-2025 www.aizhengw.cn 癌症网版板所有