计算机基础教育 > 算法与程序设计类
C++面向对象程序设计(第三版)
书号:9787113224868 套系名称:“十三五”高校计算机应用技术系列规划教材
作者:陈维兴 林小茶 出版日期:2017-01-01
定价:48.00 页码 / 开本:352 /16
策划编辑:周海燕 责任编辑:周海燕 徐盼欣
适用专业:无 适用层次:高等院校
最新印刷时间:2022-01-17
资源下载
教学课件
教学素材
习题答案(暂无)
教学案例(暂无)
教学设计(暂无)
教学视频(暂无)
内容简介
前言
目录
作者介绍
图书特色
本书是为具有C 语言基础的读者编写的,主要介绍C++面向对象程序设计的基本知识和编程方法,全面讲述了C++面向对象的基本特征。内容包括类、对象、继承、派生类、多态性、虚函数、运算符重载、模板、输入和输出流类库、异常处理和命名空间、STL 标准模板库和面向对象程序设计方法与实例等。
本书注重基本概念,从实际应用出发,突出重点,深入浅出,叙述清晰,内容详尽。针对初学者的特点,力求通过大量的例题,以通俗易懂的语言讲解复杂的概念和方法,以帮助读者尽快迈入面向对象程序设计的大门。
本书采用Visual C++ 2010 作为调试环境。为了帮助读者进一步理解和掌握所学的知识,同时出版了与本书配套的辅导教材《C++面向对象程序设计习题解答与上机指导(第三版)》。
本书内容全面、语言通俗、例题丰富,同时配有大量习题,适合作为高等院校各专业学生学习C++的基础教材,也适合初学者自学使用。无
第1 章 面向对象程序设计........................................... 1
1.1 面向对象程序设计概述... 11.1.1 面向对象程序设计的定义.................................... 11.1.2 面向对象程序设计的基本概念............................ 21.1.3 面向对象程序设计的基本特征............................ 41.2 面向对象程序设计的特点 81.2.1 面向过程程序设计的局限性................................ 81.2.2 面向对象程序设计的主要优点............................ 91.3 面向对象程序设计的语言...............................................101.3.1 面向对象程序设计语言的发展概况....................101.3.2 几种典型的面向对象程序设计语言....................11本章小结..................................12习题..........................................13第2 章 C++基础........142.1 C++的产生和特点...........142.1.1 C++的产生...........142.1.2 C++的特点...........152.2 C++程序的结构特性.......152.2.1 一个简单的C++示例程序...................................152.2.2 C++程序的结构特性............................................162.3 C++程序的编辑、编译、连接和运行.............................172.4 C++在非面向对象方面对C 语言的扩充........................182.4.1 注释行.................182.4.2 C++的输入和输出...............................................192.4.3 灵活的变量声明..212.4.4 结构、联合和枚举名..........................................222.4.5 函数原型..............232.4.6 const 修饰符........252.4.7 void 型指针..........262.4.8 内联函数..............272.4.9 带有默认参数值的函数.......................................282.4.10 函数重载............292.4.11 作用域标识符“∷”.........................................312.4.12 强制类型转换....322.4.13 new 和delete 运算符..........................................322.4.14 引用...................35本章小结..................................42习题..........................................42第3 章 类和对象(一) .............................................463.1 类的构成.........................463.1.1 从结构体到类......463.1.2 类的构成概述......473.2 成员函数的定义..............493.2.1 普通成员函数的定义..........................................493.2.2 内联成员函数的定义..........................................503.3 对象的定义和使用..........513.3.1 类与对象的关系..513.3.2 对象的定义..........523.3.3 对象中成员的访问..............................................523.3.4 类的作用域和类成员的访问属性.......................543.3.5 对象赋值语句......553.4 构造函数与析构函数......563.4.1 构造函数..............563.4.2 成员初始化列表..603.4.3 带默认参数的构造函数.......................................613.4.4 析构函数..............633.4.5 默认的构造函数和默认的析构函数....................663.4.6 构造函数的重载..693.4.7 拷贝构造函数......71*3.4.8 浅拷贝和深拷贝..78本章小结..................................81习题..........................................82第4 章 类和对象(二) .............................................874.1 自引用指针this ...............874.2 对象数组与对象指针......904.2.1 对象数组..............904.2.2 对象指针..............934.2.3 string 类...............954.3 向函数传递对象..............974.3.1 使用对象作为函数参数.......................................974.3.2 使用对象指针作为函数参数...............................984.3.3 使用对象引用作为函数参数...............................994.4 静态成员.......................1004.4.1 静态数据成员....1004.4.2 静态成员函数....1044.5 友元...............................1074.5.1 友元函数............1084.5.2 友元类...............1124.6 类的组合.......................114*4.7 共享数据的保护............1174.7.1 常引用...............1174.7.2 常对象...............1184.7.3 常对象成员........119*4.8 C++程序的多文件组成.1224.9 程序举例.......................123本章小结................................125习题........................................126第5 章 继承与派生..1355.1 继承与派生的概念........1355.1.1 使用继承的原因1355.1.2 派生类的声明....1375.1.3 基类成员在派生类中的访问属性.....................1385.1.4 派生类对基类成员的访问规则.........................1395.2 派生类的构造函数和析构函数.....................................1445.2.1 派生类构造函数和析构函数的调用顺序..........1445.2.2 派生类构造函数和析构函数的构造规则..........145*5.3 调整基类成员在派生类中的访问属性的其他方法......1515.3.1 同名成员............1515.3.2 访问声明............1525.4 多继承与虚基类............1555.4.1 声明多继承派生类的方法.................................1555.4.2 多继承派生类的构造函数与析构函数..............1575.4.3 虚基类...............161*5.5 赋值兼容规则...............1665.6 程序举例.......................169本章小结................................172习题........................................172第6 章 多态性与虚函数...........................................1766.1 多态性概述...................1766.1.1 虚函数的案例....1776.1.2 虚函数的作用和定义........................................177*6.1.3 虚析构函数........1816.1.4 虚函数与重载函数的关系.................................1836.1.5 多继承与虚函数1846.2 纯虚函数和抽象类........1856.2.1 纯虚函数............1856.2.2 抽象类...............1866.3 程序举例.......................187本章小结................................190习题........................................191第7 章 运算符重载..1947.1 运算符重载概述............1947.2 运算符函数重载为类的友元函数和成员函数..............1967.2.1 友元运算符重载函数........................................1967.2.2 成员运算符重载函数........................................2017.2.3 运算符重载应该注意的几个问题.....................2057.3 几个常用运算符的重载2087.3.1 赋值运算符“=”的重载...................................208*7.3.2 下标运算符“[]”的重载...................................212*7.3.3 函数调用运算符“()”的重载...........................2137.4 重载插入运算符和提取运算符.....................................2157.4.1 重载插入运算符“<<” ......................................2157.4.2 重载提取运算符“>>” ......................................2177.5 类型转换.......................2187.5.1 标准类型间的转换............................................218*7.5.2 类类型与标准类型间的转换.............................2197.6 程序举例.......................223本章小结................................225习题........................................225第8 章 函数模板与类模板........................................2298.1 模板的概念...................2298.2 函数模板.......................2308.2.1 函数模板的声明2308.2.2 函数模板的使用2318.3 类模板...........................2348.4 程序举例.......................239本章小结................................241习题........................................241第9 章 C++的输入和输出........................................2469.1 C++为何建立自己的输入/输出系统.............................2469.2 C++的流库及其基本结构..............................................2479.2.1 C++的流.............2479.2.2 预定义的流对象2499.2.3 输入/输出流的成员函数....................................2509.3 预定义类型输入/输出的格式控制................................2519.3.1 用流成员函数进行输入/输出格式控制.............2529.3.2 使用预定义的操作符进行输入/输出格式控制.2559.3.3 使用用户自定义的操作符进行输入/输出格式控制..........................................2589.4 文件的输入/输出...........2599.4.1 文件概述............2599.4.2 文件的打开与关闭............................................2609.4.3 文本文件的读/写...............................................2639.4.4 二进制文件的读/写...........................................2659.5 程序举例.......................271本章小结................................272习题........................................273第10 章 异常处理和命名空间...................................27710.1 异常处理.....................27710.1.1 异常处理概述..27710.1.2 异常处理的方法..............................................27810.2 命名空间和头文件命名规则.......................................28210.2.1 命名空间..........28210.2.2 头文件命名规则..............................................284本章小结................................284习题........................................285第11 章 STL 标准模板库.........................................28711.1 容器、算法和迭代器的基本概念...............................28711.2 容器.............................28811.2.1 vector 容器.......28811.2.2 list 容器............29311.2.3 容器适配器......29711.2.4 deque 容器.......30111.2.5 set、multiset、map 和multimap 容器..............302本章小结................................304习题........................................304第12 章 面向对象程序设计方法与实例.....................30812.1 面向对象程序设计的一般方法和技巧........................30812.2 设计实例.....................31112.2.1 举例:模拟网上购书的结账功能....................31112.2.2 举例:模拟ATM 为用户提供服务..................319本章小结................................333习题........................................333参考文献....................334基于Visual C++2010