成功加入购物车
谭浩强 / 清华大学出版社 / 2020-11 / 其他
售价 ¥ 11.90 2.1折
定价 ¥58.00
品相 八五品
优惠 满包邮
延迟发货说明
上书时间2024-05-18
卖家超过10天未登录
C++面向对象程序设计(第3版)
本书内容包括面向对象程序设计的基本理论概念和C 语言的基本內容,并且把这两方面有机地结合起来。*章介绍面向过程程序设计领域中C 对C的扩充,第二章简要而通俗清晰地介绍了面向对象程序设计的基本知识,在后续各章中由浅入深地介绍怎样编写C 程序,在这过程中自然地具体地介绍了面向对象程序设计方法的应用。
谭浩强,我国著名计算机教育专家,全国高等学校计算机基础教育研究会名誉理事长。著有《C程序设计》等经典教材多部。
第1章C 的初步知识1 1.1从C到C 1 1.2最简单的C 程序2 1.3C 对C的扩充8 1.3.1C 的输入输出8 1.3.2用const定义常变量11 1.3.3函数原型声明11 1.3.4函数的重载12 1.3.5函数模板14 1.3.6有默认参数的函数16 1.3.7变量的引用17 1.3.8内置函数24 1.3.9作用域运算符25 1.3.10字符串变量26 1.3.11动态分配/撤销内存的运算符new和delete29 1.3.12C 对C功能扩展的小结31 1.4C 程序的编写和实现32 1.5关于C 上机实践33 习题34 第2章类和对象的特性37 2.1面向对象程序设计方法概述37 2.1.1什么是面向对象的程序设计37 2.1.2面向对象程序设计的特点41 2.1.3类和对象的作用42 2.1.4面向对象的软件开发43 2.2类的声明和对象的定义44 2.2.1类和对象的关系44 2.2.2声明类的类型45 2.2.3定义对象的方法47 2.2.4类和结构体类型的异同48 2.3类的成员函数49 2.3.1成员函数的性质49 2.3.2在类外定义成员函数50 2.3.3内置成员函数(inline成员函数)51 2.3.4成员函数的存储方式52 2.4怎样访问对象的成员54 2.4.1通过对象名和成员运算符访问对象中的成员54 2.4.2通过指向对象的指针访问对象中的成员55 2.4.3通过对象的引用来访问对象中的成员55 2.5类和对象的简单应用举例55 2.6类的封装性和信息隐蔽64 2.6.1公用接口与私有实现的分离64 2.6.2类声明和成员函数定义的分离65 2.6.3面向对象程序设计中的几个名词68 习题68 第3章怎样使用类和对象71 3.1类对象的初始化71 3.1.1需要对类对象进行初始化71 3.1.2用构造函数实现数据成员的初始化72 3.1.3用带参数的构造函数对不同对象初始化74 3.1.4在构造函数中用参数初始化表对数据成员初始化76 3.1.5可以对构造函数进行重载77 3.1.6构造函数可以使用默认参数79 3.1.7用构造函数实现初始化方法的归纳82 3.1.8利用析构函数进行清理工作83 3.1.9调用构造函数和析构函数的顺序85 3.2对象数组87 3.3对象指针89 3.3.1指向对象的指针89 3.3.2指向对象成员的指针90 3.3.3指向当前对象的this指针93 3.4共用数据的保护94 3.4.1定义常对象95 3.4.2定义常对象成员96 3.4.3指向对象的常指针97 3.4.4指向常对象的指针变量98 3.4.5对象的常引用101 3.4.6const型数据的小结102 3.5对象的动态建立和释放102 3.6对象的赋值和复制104 3.6.1对象的赋值104 3.6.2对象的复制105 3.7不同对象间实现数据共享108 3.7.1把数据成员定义为静态108 3.7.2用静态成员函数访问静态数据成员110 3.8允许访问私有数据的“朋友”113 3.8.1可以访问私有数据的友元函数113 3.8.2可以访问私有数据的友元类117 3.9类模板118 习题122 第4章对运算符进行重载126 4.1为什么要对运算符重载126 4.2对运算符重载的方法128 4.3重载运算符的规则131 4.4运算符重载函数作为类成员函数和友元函数133 4.5重载双目运算符136 4.6重载单目运算符141 4.7重载流插入运算符和流提取运算符143 4.7.1重载流插入运算符“”146 4.8有关运算符重载的归纳148 4.9不同类型数据间的转换149 4.9.1标准类型数据间的转换149 4.9.2把其他类型数据转换为类对象——用转换构造函数150 4.9.3将类对象转换为其他类型数据——用类型转换函数151 习题157 第5章类的继承158 5.1继承与派生158 5.2派生类的声明方式161 5.3派生类的构成161 5.4派生类成员的访问属性163 5.4.1公用继承164 *5.4.2私有继承166 5.4.3保护成员和保护继承169 5.4.4多级派生时的访问属性173 5.5派生类的构造函数和析构函数174 5.5.1简单的派生类的构造函数175 5.5.2有子对象的派生类的构造函数178 5.5.3多层派生时的构造函数181 5.5.4派生类构造函数的特殊形式183 5.5.5派生类的析构函数184 5.6多重继承185 5.6.1声明多重继承的方法185 5.6.2多重继承派生类的构造函数185 5.6.3多重继承引起的二义性问题188 5.6.4在继承间接共同基类时减少数据冗余——用虚基类191 5.7基类与派生类的转换196 5.8继承与组合200 5.9继承在软件开发中的重要意义201 习题202 第6章C 的多态性207 6.1什么是多态性207 6.2一个典型的例子208 6.3利用虚函数实现动态多态性214 6.3.1虚函数的作用214 6.3.2静态关联与动态关联218 6.3.3在什么情况下应当声明虚函数219 6.3.4虚析构函数220 6.4纯虚函数与抽象类221 6.4.1没有函数体的纯虚函数221 6.4.2不能用来定义对象的类——抽象类222 6.4.3应用实例223 习题229 第7章输入输出流230 7.1C 的输入和输出230 7.1.1输入输出的含义230 7.1.2C 的I/O对C的发展——类型安全和可扩展性230 7.1.3C 的输入输出流231 7.2标准输出流236 7.2.1cout,cerr和clog流236 7.2.2标准类型数据的格式输出238 7.2.3用流成员函数put输出字符243 7.3标准输入流244 7.3.1cin流244 7.3.2用于字符输入的流成员函数246 7.3.3istream类的其他成员函数250 7.4对数据文件的操作与文件流253 7.4.1文件的概念253 7.4.2文件流类与文件流对象255 7.4.3文件的打开与关闭256 7.4.4对ASCII文件的操作258 7.4.5对二进制文件的操作263 7.5字符串流269 习题273 第8章善于使用C 工具275 8.1对出现异常情况的处理275 8.1.1异常处理的任务275 8.1.2异常处理的方法276 8.1.3在函数声明中进行异常情况指定283 8.1.4在异常处理中处理析构函数284 8.2用命名空间避免同名冲突286 8.2.1同名冲突286 8.2.2什么是命名空间289 8.2.3使用命名空间解决名字冲突291 8.2.4使用命名空间中的成员的方法293 8.2.5使用无名的命名空间295 8.2.6使用标准命名空间std296 8.3使用早期的函数库297 习题298 附录A常用字符与ASCII码对照表300 附录B运算符与结合性301 参考文献303
展开全部
配送说明
...
相似商品
为你推荐
开播时间:09月02日 10:30