- ISBN:9787121315831
- 装帧:暂无
- 册数:暂无
- 重量:暂无
- 开本:16开
- 页数:424
- 出版时间:2017-06-01
- 条形码:9787121315831 ; 978-7-121-31583-1
本书特色
本书以C 11标准为指导,深入浅出地介绍了标准C 面向对象程序设计的相关知识,以及用Visual C 进行面向对象的Windows程序设计的基本原理和方法,包括C 对C语言的扩展、类、对象、友元、继承、多态性、虚函数、重载、I/O流类库、文件、模板与STL、C Windows程序的结构、消息驱动、MFC应用程序框架、GDI、菜单、对话框、工具栏、文档与视图等内容。全书本着易于理解、实用性强的原则设计其内容和案例,并以一个规模较大的综合性程序的编制贯穿于C 面向对象技术和Windows程序设计的全过程,引导读者理解和掌握面向对象程序设计的思想、技术、方法,以及在Windows程序中应用自定义类实现程序功能的软件开发方法。本书取材新颖,内容全面,通俗易懂,可作为高等院校计算机、电子信息类专业及其他理工类相关专业的教材,也可作为C 语言自学者或程序设计人员的参考用书。
内容简介
本书以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
作者简介
杜茂康,重庆邮电大学经济管理学院教授,主要教授《数据处理》、《C 程序设计》、《大学计算机》等课程,专业带头人,出版多部教材。
-
当代中国政府与政治(新编21世纪公共管理系列教材)
¥33.6¥48.0 -
落洼物语
¥8.7¥28.0 -
中国当代文学名篇选读
¥19.1¥53.0 -
中医基础理论
¥50.7¥59.0 -
北大人文课(平装)
¥13.9¥45.0 -
宪法-第二版
¥12.2¥29.0 -
当代中国政府与政治 第二版
¥57.8¥68.0 -
EPLAN电气设计
¥29.9¥39.8 -
闯进数学世界――探秘历史名题
¥21.3¥32.8 -
企业法务教程
¥34.8¥49.0 -
习近平新时代中国特色社会主义思想概论
¥18.2¥26.0 -
金融学
¥29.9¥49.0 -
计算机操作系统教程(第4版)(清华大学计算机系列教材)
¥31.9¥49.0 -
三国史
¥27.5¥50.0 -
陶瓷坯釉料制备技术/高职高专材料工程技术专业
¥37.4¥45.0 -
陶瓷工艺技术
¥41.7¥49.0 -
飞机总体设计
¥46.8¥78.0 -
陶瓷工艺学/焦宝祥
¥41.7¥49.0 -
古代汉语(第四册)
¥16.1¥35.0 -
编辑审稿实务教程
¥35.1¥45.0