X
0


购买方式

联系编辑

编辑:高老师ZR

QQ:1234090

电话:0411-84706671(编辑电话)0411-84706041(购书电话)

邮箱:

相关教材

面向对象程序设计(C++)(第四版)

王明福

978-7-5685-4164-0

①TP312.8

大连理工大学出版社

2026-08-01

62.80元

编辑推荐

  本教材围绕面向对象的核心思想与开发方法展开,以微软Visual Studio 2022作为开发平台,兼顾面向过程与面向对象程序设计,做到适度区分、有机融合。全书共设置10个项目、23个具体任务,涵盖C++数据类型、运算符与表达式、程序控制结构、复合数据类型、函数、类与对象、派生与继承、多态和虚函数、模板与异常处理、C++I/O流类库等内容。前5个项目讲解面向过程的C++基础语法知识;项目6~项目10聚焦面向对象的核心特征与开发技术,重点讲解C++抽象、封装、继承、多态、动态联编五大核心特性。


  • 内容简介
  • 教材目录
  • 样章试读
  • 教学资源

  《面向对象程序设计(C++)》(第四版)是“十四五”职业教育国家规划教材、“十三五”职业教育国家规划教材、“十二五”职业教育国家规划教材、高职高专计算机教指委优秀教材,也是高等职业教育软件技术专业系列规划教材之一。

  党的二十大报告指出:我们要坚持教育优先发展、科技自立自强、人才引领驱动,加快建设教育强国、科技强国、人才强国,坚持为党育人、为国育才,全面提高人才自主培养质量,着力造就拔尖创新人才,聚天下英才而用之。培养软件开发技术技能型人才,是新时代赋予高职院校的重要使命。本教材将社会主义核心价值观、职业道德、工匠精神、团队协作等内容作为课程思政元素融入教学全过程,做到因势利导、润物无声,引导学生把个人成才理想融入中华民族伟大复兴的中国梦。

  面向对象设计技术是当前主流的软件设计技术。C++伴随面向对象技术发展应运而生,其广泛应用又进一步推动了面向对象技术的进步。

  本教材围绕面向对象的核心思想与开发方法展开,以微软Visual Studio 2022作为开发平台,兼顾面向过程与面向对象程序设计,做到适度区分、有机融合。全书共设置10个项目、23个具体任务,涵盖C++数据类型、运算符与表达式、程序控制结构、复合数据类型、函数、类与对象、派生与继承、多态和虚函数、模板与异常处理、C++I/O流类库等内容。前5个项目讲解面向过程的C++基础语法知识;项目6~项目10聚焦面向对象的核心特征与开发技术,重点讲解C++抽象、封装、继承、多态、动态联编五大核心特性。

  本版教材在上一版基础上,结合一线教学反馈与职业教育改革发展需求,吸纳行业新技术、新知识、新方法,贴合技能型人才培养要求完成修订,以项目-任务式体例组织内容,调整、充实教学案例,修订工作主要体现在以下三方面。

  1.优化教材编写理念与内容组织形式

  本教材坚持以就业为导向、以学生为主体,关注学生职业成长,重视职业素养培育。采用“项目驱动+知识学习+项目实施+自我测试练习”四位一体的内容组织模式。前5个项目在知识准备、任务实施环节分别设置“模仿练习”与“拓展训练”两级实训任务,用于验证、巩固语法概念,适配自主学习、合作学习与分层教学的需要。项目6~项目10以综合案例图书借阅管理系统为载体,拆解系统功能模块与程序代码,按照C++面向对象知识体系分配至各个子任务。跟随系统从设计、编码开发、迭代优化到功能完善的完整过程,帮助学生在项目实践中掌握面向对象开发技术,完成知识内化与构建。

  2.教材内容的删减与新增

  新版删除“Visual C++编程基础”“MFC应用程序实例”两部分内容,进一步凸显面向对象五大核心特征,使教材内容与面向对象程序设计的知识体系更加匹配。新增名称空间、头文件演变等内容,适配新版开发环境,满足实际项目开发需求。书中增设“素养小贴士”栏目,融入党的二十大报告中“推进文化自信自强,铸就社会主义文化新辉煌”的精神内涵。

  3.更新、增补案例与项目

  案例与项目遵循实用、趣味、创新的原则,部分取材于企业真实项目与全国“蓝桥杯”软件大赛改编试题,贴合产业升级、技术迭代与岗位能力变化,充分体现行业新知识、新技术、新方法。

  在编写本教材的过程中,编者参考、引用和改编了国内外出版物中的相关资料以及网络资源,在此向相关作者表示感谢。相关著作权人看到本教材后,请与出版社联系,出版社将按照相关法律的规定支付稿酬。

  本教材可以作为高职高专院校计算机应用技术、软件技术等相关专业面向对象程序设计课程的教材,也可以作为应用型本科相关专业学习面向对象程序设计的教材,还可以作为全国“蓝桥杯”软件大赛的参考用书。

  尽管编者已尽力完善书稿,但受限于编者水平,书中难免存在疏漏与不足之处,恳请广大读者批评指正,并欢迎反馈意见,以便后续版本修订完善。

  编 者

  2026年8月于深圳职业技术大学


 

项目1 走进C++编程世界 / 1

 项目导入 / 1

 1.1 程序设计语言简介 / 1

  1.1.1 计算机语言与程序 / 2

  1.1.2 从C到C++ / 3

 1.2 程序设计方法 / 4

  1.2.1 结构化程序设计方法 / 4

  1.2.2 面向对象的程序设计方法 / 4

  1.2.3 面向对象的特性 / 5

 1.3 认识C++程序 / 6

  1.3.1 预编译指令 / 7

  1.3.2 名称空间 / 7

  1.3.3 主函数 / 8

  1.3.4 自定义函数 / 8

  1.3.5 C++程序中的注释 / 9

 1.4 C++的输入/输出 / 9

 1.5 头文件的引用形式 / 13

  1.5.1 头文件的演变 / 13

  1.5.2 头文件的引用形式 / 14

 任务1-1 安装集成开发环境 / 15

 任务1-2 开发环境的使用 / 19

 自我测试练习 / 21

项目2 认识C++数据类型、运算符和表达式 / 23

 2.1 关键字和标识符 / 23

  2.1.1 关键字 / 23

  2.1.2 标识符 / 24

 2.2 基本数据类型 / 24

  2.2.1 整型数据 / 24

  2.2.2 实型数据 / 26

  2.2.3 字符型数据 / 26

 2.3 常量与变量 / 27

  2.3.1 常 量 / 27

  2.3.2 变 量 / 31

 2.4 运算符与表达式 / 32

  2.4.1 算术运算符和算术表达式 / 32

  2.4.2 关系运算符与关系表达式 / 35

  2.4.3 逻辑运算符与逻辑表达式 / 36

  2.4.4 条件运算符 / 38

  2.4.5 赋值运算符和赋值表达式 / 39

  2.4.6 逗号运算符和逗号表达式 / 40

  2.4.7 运算符的优先级与结合顺序 / 41

 2.5 类型转换 / 42

 任务2-1 求解方程ax2+bx+c=0(a≠0) / 44

 任务2-2 逻辑推理与判断 / 45

 自我测试练习 / 47

项目3 C++的控制结构 / 49

 3.1 选择结构 / 49

  3.1.1 if语句 / 49

  3.1.2 if语句的嵌套 / 52

  3.1.3 switch语句 / 53

 3.2 循环语句 / 55

  3.2.1 while语句 / 55

  3.2.2 do-while语句 / 56

  3.2.3 for语句 / 57

  3.2.4 循环的嵌套 / 59

 3.3 循环控制 / 61

  3.3.1 break与continue语句 / 61

  3.3.2 goto语句和标号语句 / 64

 任务3-1 趣味古典数学问题 / 64

 任务3-2 文字游戏 / 66

 任务3-3 逻辑推理* / 67

 自我测试练习 / 69

项目4 复合数据类型 / 72

 4.1 一维数组 / 72

  4.1.1 一维数组的定义 / 72

  4.1.2 一维数组的引用 / 73

  4.1.3 一维数组的初始化 / 74

 4.2 二维数组 / 75

  4.2.1 二维数组的定义 / 75

  4.2.2 二维数组的引用 / 76

  4.2.3 二维数组的初始化 / 76

 4.3 字符数组与字符串 / 78

  4.3.1 字符数组 / 78

  4.3.2 字符串 / 80

  4.3.3 字符串处理函数 / 82

 4.4 结构体类型 / 85

  4.4.1 结构体类型的定义 / 85

  4.4.2 结构体变量的定义 / 85

  4.4.3 结构体变量的引用 / 87

  4.4.4 结构体变量的初始化 / 89

 4.5 结构体数组 / 90

  4.5.1 结构体数组的定义 / 90

  4.5.2 结构体数组的引用 / 91

  4.5.3 结构体数组的初始化 / 92

 4.6 指 针 / 93

  4.6.1 指针的概念 / 93

  4.6.2 指针变量的定义和初始化 / 95

  4.6.3 指针变量的使用 / 96

  4.6.4 指针变量的自加、自减运算 / 97

  4.6.5 指针与数组 / 99

  4.6.6 指针与结构体 / 101

  4.6.7 const指针 / 103

 任务4-1 不同进制数的转换 / 104

 任务4-2 候选人选票程序 / 105

 自我测试练习 / 107

项目5 函 数 / 109

 5.1 函数的定义与调用 / 109

  5.1.1 函数的定义 / 109

  5.1.2 函数的调用 / 111

  5.1.3 函数的声明 / 115

 5.2 函数参数的传递 / 117

  5.2.1 按值传递 / 117

  5.2.2 地址传递 / 118

  5.2.3 引用传递 / 120

 5.3 内联函数 / 121

 5.4 函数的重载 / 122

  5.4.1 参数类型重载的函数 / 122

  5.4.2 参数个数重载的函数 / 123

 5.5 函数的默认参数 / 124

  5.5.1 默认参数函数的使用 / 124

  5.5.2 使用时的注意问题 / 125

 5.6 函数的可变参数* / 125

 5.7 系统函数的调用 / 127

 5.8 全局变量和局部变量 / 128

  5.8.1 局部变量 / 128

  5.8.2 全局变量 / 128

 5.9 内部函数和外部函数 / 130

 5.10 编译预处理 / 131

  5.10.1 宏定义命令 / 131

  5.10.2 条件编译命令 / 133

  5.10.3 文件包含命令 / 135

 任务5-1 求数组中的最小值 / 136

 任务5-2 猴子吃桃子 / 137

 自我测试练习 / 138

项目6 图书借阅管理系统第一版 / 141

 6.1 从结构到类的演变 / 141

 6.2 认识类 / 144

  6.2.1 类的定义 / 144

  6.2.2 类的访问控制 / 146

  6.2.3 类的数据成员 / 147

  6.2.4 类的成员函数 / 148

  6.2.5 成员函数的存取权限 / 150

  6.2.6 成员函数重载 / 151

  6.2.7 成员函数缺省参数 / 151

 6.3 认识对象 / 153

  6.3.1 对象的定义 / 153

  6.3.2 对象成员的使用 / 154

  6.3.3 定义类和对象的有关说明 / 156

 6.4 对象的初始化和撤销 / 157

  6.4.1 构造函数 / 157

  6.4.2 析构函数 / 160

  6.4.3 拷贝构造函数 / 162

 6.5 静态成员 / 164

  6.5.1 静态数据成员 / 164

  6.5.2 静态成员函数 / 165

 6.6 友 元 / 168

  6.6.1 普通函数作为友元函数 / 168

  6.6.2 成员函数作为友元函数 / 171

  6.6.3 友元类 / 172

 6.7 类与指针 / 174

  6.7.1 指向类对象的指针 / 174

  6.7.2 new和delete函数 / 175

  6.7.3 this指针 / 178

 任务6-1 图书借阅管理系统主要类的设计 / 180

 任务6-2 图书借阅管理系统第一版 / 186

 自我测试练习 / 187

项目7 图书借阅管理系统第二版 / 190

 7.1 继承与派生 / 190

  7.1.1 继承与派生概述 / 190

  7.1.2 单一继承 / 191

 7.2 三种继承方式 / 193

  7.2.1 公有继承(派生) / 193

  7.2.2 私有继承(派生) / 195

  7.2.3 保护继承(派生) / 196

 7.3 派生类的构造函数和析构函数 / 198

  7.3.1 构造函数 / 198

  7.3.2 析构函数 / 200

 7.4 多继承 / 201

  7.4.1 多继承的定义 / 201

  7.4.2 多继承的构造函数 / 202

 7.5 多继承中的二义性 / 204

  7.5.1 作用域分辨符 / 204

  7.5.2 虚基类 / 207

  7.5.3 虚基类的构造函数 / 208

  7.5.4 虚基类的应用实例 / 210

 任务7-1 管理系统类层次结构设计 / 212

 任务7-2 修改读者类和操作类 / 214

 任务7-3 类成员函数的实现 / 215

 任务7-4 图书借阅管理系统第二版 / 223

 自我测试练习 / 224

项目8 多态性和虚函数应用 / 227

 8.1 联编的概念 / 227

 8.2 动态联编和虚函数 / 229

  8.2.1 虚函数的定义 / 229

  8.2.2 虚函数的调用 / 231

 8.3 纯虚函数和抽象类 / 234

  8.3.1 纯虚函数 / 234

  8.3.2 抽象类 / 236

 8.4 静态多态性与动态多态性的比较 / 237

 8.5 运算符重载 / 240

  8.5.1 运算符重载的一般规则 / 240

  8.5.2 运算符重载为成员函数 / 241

  8.5.3 运算符重载为友元函数 / 244

 任务8-1 抽象类的应用实例 / 247

 任务8-2 计算函数的定积分 / 250

 任务8-3 运算符重载的综合应用 / 253

 自我测试练习 / 255

项目9 模板和异常处理 / 258

 9.1 模板概述 / 258

 9.2 函数模板 / 260

  9.2.1 函数模板的定义 / 260

  9.2.2 函数模板的实例化 / 261

  9.2.3 函数模板的重载 / 264

 9.3 类模板 / 266

  9.3.1 类模板的定义 / 266

  9.3.2 类模板的实例化 / 267

 9.4 异常处理 / 269

  9.4.1 异常的概念 / 269

  9.4.2 异常处理的实现 / 270

  9.4.3 异常处理的执行过程 / 271

 任务9-1 冒泡排序函数模板 / 273

 任务9-2 最大值类模板 / 275

 自我测试练习 / 276

项目10 图书借阅管理系统第三版 / 279

 10.1 文件和流 / 279

  10.1.1 文件概述 / 279

  10.1.2 文件流类 / 280

 10.2 文件的打开和关闭 / 281

  10.2.1 文件的打开 / 281

  10.2.2 文件的关闭 / 282

 10.3 文件的顺序读写 / 283

  10.3.1 使用流运算符读写文本文件 / 283

  10.3.2 使用流的成员函数读写文本文件 / 285

  10.3.3 二进制文件的读写 / 287

 10.4 文件的随机读写 / 290

 任务10 图书借阅管理系统第三版 / 293

 自我测试练习 / 295

参考文献 / 298


很抱歉!您正在使用的浏览器版本过低,无法正常使用我们的网站,请升级后再试!

为获得最佳浏览体验,建议您升级或使用其他浏览器,我们列出了一些最受欢迎的浏览器供您尝试: