华信教育资源网
面向对象程序设计教程——C++
丛   书   名: 计算机类本科规划教材
作   译   者:王晓帆 出 版 日 期:2020-07-01
出   版   社:电子工业出版社 维   护   人:冉哲 
书   代   号:G0392580 I S B N:9787121392580

图书简介:

本书针对已有C程序设计基础、学习C++面向对象程序设计的读者。本书分为12章,第1章介绍面向对象程序设计的思想和基本概念;第2章综述C++的发展历程及新特性;第3~6章介绍类、对象、函数、常量、重载的概念及使用方法;第7、8章详细讲解类的组合、继承、多态及模板问题;第9~11章详细介绍输入流/输出流、异常处理及Visual C++ 2019开发环境;第12章给出一个Visual Studio环境下的C++综合实例。本书内容由浅入深,采用案例教学的方法,力求将复杂的概念用简洁浅显的语言进行讲解,并且用实例对方法进行说明。书中还配有大量的习题。本书配有电子课件等教学资源,请登录华信教育资源网www.hxedu.com.cn,注册后免费下载。本书还配有慕课,请登录智慧树网站www.zhihuishu.com,搜索“面向对象程序设计”或扫描前言中的课程二维码。
定价 49.8
您的专属联系人更多
关注 评论(1) 分享
配套资源 图书内容 样章/电子教材 图书评价
  • 配 套 资 源

    本书资源

    会员上传本书资源

  • 图 书 内 容

    内容简介

    本书针对已有C程序设计基础、学习C++面向对象程序设计的读者。本书分为12章,第1章介绍面向对象程序设计的思想和基本概念;第2章综述C++的发展历程及新特性;第3~6章介绍类、对象、函数、常量、重载的概念及使用方法;第7、8章详细讲解类的组合、继承、多态及模板问题;第9~11章详细介绍输入流/输出流、异常处理及Visual C++ 2019开发环境;第12章给出一个Visual Studio环境下的C++综合实例。本书内容由浅入深,采用案例教学的方法,力求将复杂的概念用简洁浅显的语言进行讲解,并且用实例对方法进行说明。书中还配有大量的习题。本书配有电子课件等教学资源,请登录华信教育资源网www.hxedu.com.cn,注册后免费下载。本书还配有慕课,请登录智慧树网站www.zhihuishu.com,搜索“面向对象程序设计”或扫描前言中的课程二维码。

    图书详情

    ISBN:9787121392580
    开 本:16(185*260)
    页 数:272
    字 数:533

    本书目录

    目    录
     
    第1章  面向对象方法学	1
    1.1  面向对象方法学的发展	1
    1.2  面向对象方法学的概述	2
    1.2.1  面向对象分析	2
    1.2.2  面向对象设计	3
    1.2.3  面向对象实现	3
    1.3  面向对象程序设计的特性	3
    1.3.1  抽象	4
    1.3.2  封装	4
    1.3.3  继承	5
    1.3.4  多态	5
    1.4  面向对象程序设计的术语	6
    1.5  面向对象程序设计语言	7
    1.5.1  C++	7
    1.5.2  Java	8
    1.5.3  C#	9
    1.5.4  Python	10
    小结	11
    习题1	11
    第2章  C++概述	12
    2.1  C++发展历程与特点	12
    2.2  C++程序	13
    2.2.1  C++程序的格式与构成	13
    2.2.2  C++程序的编译与执行	15
    2.3  从C到C++	16
    2.4  C++的一些新特性	18
    2.4.1  注释	18
    2.4.2  新的数据类型	19
    2.4.3  灵活的变量说明	19
    2.4.4  作用域运算符	19
    2.4.5  命名空间	20
    2.4.6  新的输入/输出	21
    2.4.7  头文件	23
    2.4.8  引用	24
    2.5  Visual C++ 2019开发环境简介	28
    
    小结	30
    习题2	30
    第3章  类与对象	32
    3.1  类的定义	32
    3.1.1  类定义格式	32
    3.1.2  成员函数的定义	34
    3.1.3  类的作用域	34
    3.2  对象的定义与使用	35
    3.2.1  对象的定义	35
    3.2.2  对象的使用	36
    3.2.3  对象的赋值	38
    3.2.4  对象的生命周期	39
    3.3  构造函数和析构函数	42
    3.3.1  构造函数	42
    3.3.2  析构函数	44
    3.4  内存的动态分配	47
    3.4.1  运算符new	47
    3.4.2  运算符delete	48
    3.5  对象数组和对象指针	49
    3.5.1  对象数组	49
    3.5.2  对象指针	51
    3.5.3  自引用指针this	52
    小结	54
    习题3	54
    第4章  函数	56
    4.1  函数参数的传递机制	56
    4.1.1  使用对象作为函数参数	56
    4.1.2  使用对象指针作为函数参数	57
    4.1.3  使用对象引用作为函数参数	58
    4.1.4  三种传递方式比较	59
    4.2  内联函数	59
    4.3  函数重载	60
    4.3.1  非成员函数重载	60
    4.3.2  成员函数重载	62
    4.4  函数的默认参数值	63
    
    4.5  友元	65
    4.5.1  友元函数	65
    4.2.2  友元类	69
    4.6  静态成员	70
    4.6.1  静态数据成员	71
    4.6.2  静态成员函数	73
    4.6.3  静态对象	76
    4.7  应用实例	77
    小结	83
    习题4	84
    第5章  常量	88
    5.1  const的最初动机	88
    5.1.1  由define引发的问题	88
    5.1.2  const的使用方法	88
    5.2  const与指针	89
    5.2.1  指向常量的指针	90
    5.2.2  常指针	90
    5.3  const与引用	91
    5.4  const与函数	91
    5.4.1  const类型的参数	91
    5.4.2  const类型的返回值	92
    5.4.3  const在传递地址中的应用	93
    5.5  const与类	94
    5.5.1  类内const局部常量	94
    5.5.2  常对象与常成员函数	95
    5.6  拷贝构造函数	97
    小结	101
    习题5	102
    第6章  运算符重载	103
    6.1  运算符重载的基本概念	103
    6.2  成员函数重载运算符	103
    6.2.1  重载单目运算符	104
    6.2.2  重载双目运算符	105
    6.2.3  重载++、--运算符	107
    6.2.4  重载赋值运算符	110
    6.2.5  重载下标运算符	113
    6.2.6  重载函数调用运算符	115
    6.3  友元函数重载运算符	115
    6.4  成员函数与友元函数重载运算符的  
    比较	119
    6.5  类型转换	121
    6.5.1  系统预定义类型之间的   
    转换	121
    6.5.2  用构造函数实现类型转换	121
    6.5.3  用运算符转换函数实现类型
    转换	124
    小结	127
    习题6	128
    第7章  组合、继承与多态	130
    7.1  组合	130
    7.2  继承	131
    7.3  继承与组合	133
    7.4  继承与组合中的构造和析构	136
    7.4.1  成员对象初始化	136
    7.4.2  构造和析构顺序	136
    7.5  名字覆盖	140
    7.6  虚函数	141
    7.6.1  静态绑定与动态绑定	142
    7.6.2  虚函数的定义	142
    7.6.3  虚析构函数	144
    7.7  纯虚函数和抽象基类	144
    7.8  多重继承	146
    7.8.1  多继承语法	147
    7.8.2  虚基类	148
    7.8.3  最终派生类	149
    7.8.4  多继承的构造顺序	150
    小结	152
    习题7	152
    第8章  模板	156
    8.1  模板的概念	156
    8.2  函数模板与模板函数	156
    8.3  类模板与模板类	160
    8.4  应用实例	164
    小结	171
    习题8	171
    第9章 输入流/输出流	173
    9.1  C++流类库简介	173
    9.2  输入流/输出流格式	174
    9.2.1  基本输出流	174
    9.2.2  基本输入流	176
    9.2.3  格式化输入/输出	177
    9.2.4  其他输入/输出函数	183
    9.3  用户自定义类型的输入/输出	185
    9.3.1  重载输出运算符	185
    9.3.2  重载输入运算符	186
    9.4  文件输入/输出	188
    9.4.1  顺序访问文件	188
    9.4.2  随机访问文件	192
    9.5  应用实例	193
    小结	198
    习题9	198
    第10章 异常处理	201
    10.1  异常处理概述	201
    10.2  抛出异常	201
    10.3  异常捕获	202
    10.3.1  异常处理语法	202
    10.3.2  异常接口声明	204
    10.3.3  捕获所有异常	204
    10.3.4  未捕获异常的处理	204
    10.4  构造函数、析构函数与异常处理	205
    10.5  异常匹配	207
    10.6  标准异常及层次结构	208
    小结	208
    习题10	208
    第11章  Visual C++ 2019开发环境	209
    11.1  Visual C++ 2019概述	209
    11.1.1  Visual Studio 2019	209
    11.1.2  Visual C++ 2019	210
    11.2  Visual C++ 2019环境	210
    
    
    
    
    
    
    
    
    
    
    
    11.2.1  Visual C++ 2019操作界面	210
    11.2.2  项目	212
    11.2.3  调试环境	213
    11.3  Windows编程	214
    11.3.1  Windows常用数据类型	215
    11.3.2  消息与事件	215
    11.3.3  窗口消息示例	217
    11.4  MFC类库	219
    11.5  MFC编程实例	222
    小结	225
    习题11	225
    第12章 综合实例	226
    12.1  系统分析与设计	226
    12.1.1  系统功能分析	226
    12.1.2  系统功能类模型	226
    12.1.3  系统功能流程	227
    12.2  设计实现	228
    12.2.1  系统程序框架生成	228
    12.2.2  建立图元类	230
    12.2.3  界面控制	233
    12.2.4  绘制图元——线段	235
    12.2.5  绘制图元——矩形	240
    12.2.6  绘制图元——椭圆	243
    12.2.7  绘制图元——文字	246
    12.2.8  绘制图元——折线/多边形	248
    12.2.9  图元文件存取	251
    小结	260
    习题12	260
    参考文献	261
    
    展开

    前     言

    前    言
    随着新一代信息技术诸如人工智能、区块链、云计算、大数据、物联网、移动计算等技术的蓬勃兴起和快速发展,要求学生具备熟练的编程技能,并加强理论联系实际的能力,从而提高其就业竞争力。面向对象程序设计讲授面向对象程序设计的基本思想与原理,通过使用C++进行面向对象程序设计实现。课程内容包括面向对象的基本概念,建立和描述对象模型的方法,以及面向对象分析、设计和实现方法等内容。课程目的是培养学生掌握程序设计理念与方法,强化学生的逻辑思维与算法思维,具备熟练的编程技能,掌握计算机软/硬件系统开发过程中所使用的原理、工具和方法。
    近年来,人工智能的复兴,尤其是机器学习的崛起,引来了C++的再次复兴,Python、Java等语言也随之得到广泛引用。由于C++具有天生的高效、快捷等特性,因此被深入应用于人工智能的核心部分,并广泛应用于游戏应用、嵌入式应用、物联网应用、大型社交软件等的核心部分。
    C++是从C语言发展而来的,全面兼容了C语言,是一种面向对象的编程语言。对于具有C语言基础的人来说,学习C++会非常容易。本书是Visual C++ .NET入门教材,在C语言的基础之上,并紧密结合C++标准,使读者从C语言顺利过渡到C++。本书涵盖了该语言的主要特征,使初学者能快速学习并掌握C++。本书在内容组织上采用案例教学的方法,由浅入深,对每个C++的知识点从需求到应用做了详细的描述。从基本的数据单元“类”开始点滴扩展,逐步深入,讲述C++程序设计中的面向对象的封装、继承、多态等方法,揭示C++程序设计的初衷。在每章后配备了相应的习题,有助于读者灵活掌握各知识点。
    本书作者长期从事C++项目开发及本科C++程序设计课程的教学工作,还主持和参与了多个教改项目及相应的省级精品课程建设工作,具有丰富的教学与程序开发经验。
    全书分为12章,第1章为面向对象方法学;第2章为C++概述;第3章为类与对象;第4章为函数;第5章为常量;第6章为运算符重载;第7章为组合、继承与多态;第8章为模板;第9章为输入流/输出流;第10章为异常处理;第11章为Visual C++ 2019开发环境;第12章为综合实例。书中所有例题均在Visual C++ 2019下调试通过,并配有大量习题。本书配有电子课件等教学资源,请登录华信教育资源网www.hxedu.com.cn,注册后免费下载;本书还配有慕课,请登录智慧树网站www.zhihuishu.com,搜索“面向对象程序设计”或扫描课程二维码。
    本书架构由王晓帆、李薇负责确定,并组织教学一线的教师共同编写完成。其中,第2、5、7、9~12章及1.1节和1.5节由王晓帆编写,第3、4、6、8章及第1章其他部分由李薇编写,全书由姚全珠负责统稿,由王彬完成校稿。
    由于作者水平有限,难免有疏漏和错误之处,敬请各位专家和读者批评指正。
    作  者
    展开

    作者简介

    王晓帆,西安电子科技大学计算机应用专业博士研究生。现任职于西安理工大学计算机科学与工程学院,副教授。专业方向智能信息处理、人工智能。参加编写《C++面向对象程序设计》。参与陕西高等教育教学改革研究重点项目,2019年获陕西省教学成果二等奖一项。
  • 样 章 试 读
  • 图 书 评 价 我要评论
华信教育资源网