百度云及其他网盘下载地址:点我

《面向对象程序设计:C++语言描述(原书第2版)》内容丰富,结构合理,写作风格严谨,深刻地论述了c++语言的面向对象编程的各种技术,主要内容包括:面向对象编程方法、c++语言的各种特性、stl、c++输入/输出流、mfc等。《面向对象程序设计:C++语言描述(原书第2版)》针对最新的c++规范作了全面的修订,使读者可以全面掌握c++的最新技术。为使读者学习《面向对象程序设计:C++语言描述(原书第2版)》时掌握重点,各章节均配备了大量的练习和编程习题。《面向对象程序设计:C++语言描述(原书第2版)》在各章末列举了大量易犯的编程错误及避免这些错误的方法,以帮助读者编写出更为可靠的代码。
《面向对象程序设计:C++语言描述(原书第2版)》以作者在大学中讲授的c++课程为基础,特别适合大学计算机专业作为面向对象编程与c++语言课程的教材,同时可供软件开发人员参考。

编辑推荐

《面向对象程序设计:C++语言描述(原书第2版)》深刻论述了C++语言的面向对象程序设计的各种技术。内容包括:面向对象编程方法、C++语言的各种特性、STLC++输入/输出流、MFC等。《面向对象程序设计:C++语言描述(原书第2版)》配备了大量的习题,并列举了易犯的错误及避免错误的方法,易于读者的学习。
《面向对象程序设计:C++语言描述(原书第2版)》特点:结构合理、高效:内容讲解由浅入深、循序渐进。内容充实、实用:涵盖C++主要知识点,并附有经典实训案例。语言严谨、精练:结合实训案例,内容介绍层层展开、环环相扣。

作者简介

作者:(美国)约翰逊鲍尔(Richard Johnsonbaugh) (美国)Martin Kalin 译者:蔡宇辉 李军义 注释 解说词:杨贯中

目录

出版者的话
译者序
前言
第1章 面向对象编程
1.1 面向过程的编程风格与面向对象的编程风格
1.1.1 面向过程的编程风格
1.1.2 面向对象的编程风格
1.1.3 关系
1.1.4 课后练习
1.2 类与抽象数据类型
1.2.1 信息隐藏
1.2.2 封装
1.2.3 抽象数据类型
1.2.4 课后练习
1.3 客户/服务器模式与消息传递
1.3.1 客户/服务器模式
1.3.2 消息传递与方法调用
1.3.3 课后练习
1.4 继承与多态
1.4.1 继承
1.4.2 多态
1.4.3 多态与递归
1.4.4 课后练习
1.5 接口与组件
1.5.1 接口
1.5.2 组件
1.5.3 课后练习

第2章 从c到c++
2.1 名字空间
2.1.1 课后练习
2.2 c++输入/输出简介
2.2.1 操纵符
2.2.2 混合使用c和c++的输入/输出
2.2.3 课后练习
2.3 文件
2.3.1 测试文件的打开状态
2.3.2 课后练习
2.4 若干重要的c++特性
2.4.1 强制类型转换
2.4.2 常数
2.4.3 数据类型bool
2.4.4 枚举类型
2.4.5 定义变量
2.4.6 结构
2.4.7 课后练习
2.5 string类型
2.5.1 定义string类型的变量
2.5.2 转换为c风格的字符串
2.5.3 字符串长度
2.5.4 读写string
2.5.5 赋值
2.5.6 字符串的连接
2.5.7 修改字符串
2.5.8 提取子串
2.5.9 查找
2.5.10 字符串比较
2.5.11 课后练习
2.6 函数
2.6.1 函数原型
2.6.2 main函数
2.6.3 引用
2.6.4 引用调用
2.6.5 引用返回
2.6.6 内联函数
2.6.7 函数默认参数
2.6.8 函数重载
2.6.9 函数签名
2.6.10 课后练习
2.7 new和delete操作符
2.7.1 课后练习
2.8 例外处理
2.8.1 课后练习
2.9 补充材料
2.9.1 c++关键字
2.9.2 无名名字空间
2.9.3 无名联合
2.9.4 成员选择符
2.10 常见编程错误
2.11 编程习题

第3章 类
3.1 类和对象
3.1.1 类声明
3.1.2 c++的信息隐藏机制
3.1.3 成员选择符
3.1.4 类范围
3.1.5 关键字class和struct的区别
3.1.6 类成员函数的定义
3.1.7 在程序中使用类
3.1.8 课后练习
3.2 示例程序:堆栈类
3.2.1 问题
3.2.2 示例程序的输出
3.2.3 解决方案
3.2.4 类的实现
3.2.5 代码分析
3.2.6 程序设计建议
3.2.7 课后练习
3.3 效率和健壮性
3.3.1 通过引用来传递和返回对象
3.3.2 const类型参数的对象引用
3.3.3 const成员函数
3.3.4 对成员函数进行重载以便处理两种类型的字符串
3.3.5 课后练习
3.4 示例程序:时间标记类
3.4.1 问题
3.4.2 示例程序的输出
3.4.3 解决方案
3.4.4 类的实现
3.4.5 代码分析
3.4.6 程序设计建议
3.4.7 课后练习
3.5 构造函数与析构函数
3.5.1 构造函数
3.5.2 对象数组与默认构造函数
3.5.3 通过构造函数约束对象的创建
3.5.4 拷贝构造函数
3.5.5 定义拷贝构造函数
3.5.6 禁止通过传值方式传递和返回类对象
3.5.7 转型构造函数
3.5.8 转型构造函数与隐式类型转换
3.5.9 构造函数初始化程序
3.5.10 构造函数与操作符new和new[]
3.5.11 析构函数
3.5.12 课后练习
3.6 示例程序:task类
3.6.1 问题
3.6.2 示例程序的输出
3.6.3 解决方案
3.6.4 类的实现
3.6.5 代码分析
3.6.6 课后练习
3.7 类数据成员和类成员函数
3.7.1 类数据成员
3.7.2 类成员函数
3.7.3 在成员函数内定义static变量
3.7.4 课后练习
3.8 指向对象的指针
3.8.1 常量指针this
3.8.2 课后练习
3.9 常见编程错误
3.10 编程习题

第4章 继承
4.1 引言
4.1.1 课后练习
4.2 基本概念和语法
4.2.1 继承机制下的私有成员
4.2.2 改变访问限制
4.2.3 名字隐藏
4.2.4 间接继承
4.2.5 课后练习
4.3 示例程序:影片跟踪管理
4.3.1 问题
4.3.2 示例程序的输出
4.3.3 解决方案
4.3.4 类的实现
4.3.5 代码分析
4.3.6 程序设计建议
4.4 保护成员
4.4.1 课后练习
4.5 继承机制下的构造函数与析构函数
4.5.1 继承机制下的构造函数
4.5.2 派生类构造函数的规则
4.5.3 继承机制下的析构函数
4.5.4 课后练习
4.6 示例程序:设计序列的类层次结构
4.6.1 问题
4.6.2 示例程序的输入与输出
4.6.3 解决方案
4.6.4 类的实现
4.6.5 代码分析
4.7 多继承
4.7.1 继承和访问规则
4.7.2 虚基类
4.7.3 课后练习
4.8 补充材料
4.8.1 保护继承
4.8.2 私有继承
4.9 常见编程错误
4.10 编程习题

第5章 多态
5.1 c++中的运行期绑定与编译期绑定
5.1.1 c++多态的前提条件
5.1.2 虚成员函数继承
5.1.3 运行期绑定和虚成员函数表
5.1.4 构造函数与析构函数
5.1.5 虚析构函数
5.1.6 对象成员函数和类成员函数
5.1.7 课后练习
5.2 示例程序:改进的影片跟踪管理
5.2.1 问题
5.2.2 示例程序的输入/输出
5.2.3 解决方案
5.2.4 类的实现
5.2.5 代码分析
5.2.6 程序设计建议
5.2.7 课后练习
5.3 重载、覆盖和遮蔽
5.3.1 重载
5.3.2 覆盖
5.3.3 遮蔽
5.3.4 名字共享
5.3.5 课后练习
5.4 抽象基类
5.4.1 抽象基类和纯虚成员函数
5.4.2 定义纯虚成员函数的限制
5.4.3 抽象基类的使用
5.4.4 微软的iunknown接口
5.4.5 课后练习
5.5 运行期类型识别
5.5.1 dynamic_cast操作符
5.5.2 dynamic_cast的规则
5.5.3 dynamic_cast与static_cast小结
5.5.4 typeid操作符
5.5.5 扩展rtti
5.5.6 课后练习
5.6 补充材料
5.6.1 强多态和弱多态
5.7 常见编程错误
5.8 编程习题

第6章 操作符重载
6.1 基本操作符重载
6.1.1 操作符的优先级和语法
6.1.2 课后练习
6.2 示例程序:复数类
6.2.1 问题
6.2.2 示例程序的输出
6.2.3 解决方案
6.2.4 类的实现
6.2.5 代码分析
6.2.6 课后练习
6.3 用顶层函数进行操作符重载
6.3.1 课后练习
6.4 friend函数
6.4.1 课后练习
6.5 输入与输出操作符的重载
6.5.1 课后练习
6.6 赋值操作符的重载
6.6.1 课后练习
6.7 特殊操作符的重载
6.7.1 下标操作符的重载
6.7.2 函数调用操作符的重载
6.7.3 自增与自减操作符的重载
6.7.4 转型操作符
6.7.5 课后练习
6.8 示例程序:关联式数组
6.8.1 问题
6.8.2 示例程序的输入与输出
6.8.3 解决方案
6.8.4 类的实现
6.8.5 代码分析
6.8.6 课后练习
6.9 内存管理操作符
6.9.1 课后练习
6.10 补充材料
6.10.1 friend类
6.11 常见编程错误
6.12 编程习题

第7章 模板与标准模板库
7.1 模板的基本知识
7.1.1 模板实例
7.1.2 参数表中的模板类
7.1.3 模板的函数式参数
7.1.4 课后练习
7.2 示例程序:模板堆栈类
7.2.1 问题
7.2.2 示例程序的输出
7.2.3 解决方案
7.2.4 类的实现
7.2.5 代码分析
7.2.6 程序设计建议
7.2.7 断言
7.2.8 课后练习
7.3 标准模板库stl
7.3.1 容器、算法和迭代器
7.3.2 stl的优越性
7.3.3 容器基础知识
7.3.4 基本序列式容器:vector、deque和list
7.3.5 vector、deque和list的效率比较
7.3.6 基本的关联式容器:set、mult- iset、map和multimap
7.3.7 容器适配器
7.3.8 其他容器
7.3.9 stl算法
7.3.10 其他stl构件
7.3.11 课后练习
7.4 示例程序:证券业绩报表
7.4.1 问题
7.4.2 示例程序的输入与输出
7.4.3 解决方案
7.4.4 类的实现
7.4.5 代码分析
7.5 附加材料
7.5.1 模板类与继承
7.6 常见编程错误
7.7 编程习题

第8章 c++输入输出类层次
8.1 概况
8.1.1 输入输出库中的流类层次
8.1.2 输入输出库中的缓冲类层次
8.1.3 缓冲类层次与流类层次的关系
8.1.4 模板的使用
8.1.5 课后练习
8.2 ios_base和basic_ios类
8.2.1 ios_base
8.2.2 basic_ios
8.2.3 例外处理
8.2.4 课后练习
8.3 高层输入输出类
8.3.1 basic_istream
8.3.2 basic_ostream
8.3.3 basic_iostream
8.3.4 课后练习
8.4 操纵器
8.4.1 设计不带参数的操纵器
8.4.2 设计带参数的操纵器
8.4.3 课后练习
8.5 文件输入输出类
8.5.1 basic_ofstream
8.5.2 basic_ifstream
8.5.3 basic_fstream
8.5.4 课后练习
8.6 示例程序:随机存取文件类
8.6.1 问题
8.6.2 示例程序的输入与输出
8.6.3 解决方案
8.6.4 类的实现
8.6.5 代码分析
8.7 字符流输入/输出类
8.7.1 basic_ostringstream
8.7.2 basic_istringstream
8.7.3 basic_stringstream
8.7.4 课后练习
8.8 示例程序:高层拷贝函数
8.8.1 问题
8.8.2 解决方案
8.8.3 类的实现
8.8.4 代码分析
8.8.5 课后练习
8.9 缓冲区类
8.9.1 basic_streambuf
8.9.2 basic_filebuf
8.9.3 basic_stringbuf
8.9.4 课后练习
8.10 补充材料
8.11 常见编程错误
8.12 编程习题

第9章 mfc中的面向对象编程
9.1 用mfc进行windows程序设计
9.1.1 mfc编程的代码生成器
9.1.2 课后练习
9.2 mfc中的文档/视图结构
9.2.1 文档序列化
9.2.2 课后练习
9.3 示例程序:文档序列化
9.3.1 问题
9.3.2 示例程序的输出
9.3.3 解决方案
9.3.4 类的实现
9.3.5 代码分析
9.3.6 课后练习
9.4 com
9.4.1 可更改的服务器和不可变更的接口
9.4.2 com接口的层次
9.4.3 idispatch接口
9.4.4 com程序的类型
9.4.5 vc++对com的支持
9.4.6 com和ole
9.4.7 课后练习
9.5 示例程序:自动化服务器与控制器
9.5.1 问题
9.5.2 示例程序的输出
9.5.3 解决方案
9.5.4 类的实现
9.5.5 代码分析
9.5.6 引用计数问题
9.5.7 课后练习
9.6 补充材料
9.7 编程习题
附录a ascii表
附录b 用到的c++函数和成员函数
附录c 奇数编号练习的提示及答案

百度云及其他网盘下载地址:点我

c++学习书籍推荐《面向对象程序设计:C++语言描述(原书第2版)》下载的更多相关文章

  1. C语言学习书籍推荐《C Primer Plus(中文版)(第5版)》下载

    普拉塔 (Prata S.) (作者), 云巅工作室 (译者) <C Primer Plus(中文版)(第5版)>共17章,介绍了C语言的基础知识,包括数据类型.格式化输入输出.运算符.表 ...

  2. java虚拟机的学习书籍推荐

    javaEE开发已然是一个老生常谈的话题了,但经典之所以会成为经典,就是因为有可重复琢磨之处,每一次的反复推敲都会有不一样的收获.如果你不满足于做一个只会写if…else…的Java程序员,而是希望更 ...

  3. C++学习书籍推荐《Accelerated C++中文版》下载

    百度云及其他网盘下载地址:点我 媒体推荐 书评 这是一本一流的C++入门书,它采用了一种和实践相结合的方式来解决具体的问题.相比我所见过的其他C++入门书来说,本书以令人惊奇的紧凑格式覆盖了更多的关于 ...

  4. C语言学习书籍推荐《C陷阱与缺陷》下载

    下载地址:点我 凯尼格 (作者), 高巍 (译者) <C和C++经典著作:C陷阱与缺陷>适合有一定经验的C程序员阅读学习,即便你是C编程高手,<C和C++经典著作:C陷阱与缺陷> ...

  5. C语言学习书籍推荐《C和指针 Pointers On C》下载

    <C和指针 POINTERS ON C>提供与C语言编程相关的全面资源和深入讨论.本书通过对指针的基础知识和高 级特性的探讨,帮助程序员把指针的强大功能融入到自己的程序中去.  全书共18 ...

  6. java学习书籍推荐

    1. Java 语言基础 谈到Java 语言基础学习的书籍,大家肯定会推荐Bruce Eckel 的<Thinking in Java >.它是一本写的相当深刻的技术书籍,Java 语言基 ...

  7. linux学习书籍推荐linux学习书籍推荐

    引用地址:http://www.cnblogs.com/notepi/archive/2013/06/15/3137103.html Linux 学习书目推荐 Linux基础 1.<Linux与 ...

  8. 19年最新 Python0基础学习书籍推荐(内涵PDF地址以及书籍源码)

    去年看过一篇文章,是关于18年的最适合0基础学习的书籍,今年,最新的书籍也已经统计出来.书籍的PDF太过于难找,所以很多PDF都找不到. 仅仅只能找到英文版PDF 本文章统计了18.19并做过对比,在 ...

  9. c++学习书籍推荐《C++沉思录》下载

    百度云及其他网盘下载地址:点我 编辑推荐 经典C++图书,应广大读者的强烈要求再版 目录 第0章 序幕第一篇 动机第1章 为什么我用C++第2章 为什么用C++工作第3章 生活在现实世界中 第二篇 类 ...

  10. c++学习书籍推荐《C++编程思想第一卷》下载

    百度云及其他网盘下载地址:点我 编辑推荐 <C++编程思想>(第1卷)(第2版)第1版荣获"软件开发"杂志评选的1996年度 图书震撼大奖,中文版自2000年推出以来, ...

随机推荐

  1. [Windows][VC]开机自动启动程序的几种方法

    原文:[Windows][VC]开机自动启动程序的几种方法 很多监控软件要求软件能够在系统重新启动后不用用户去点击图标启动项目,而是直接能够启动运行,方法是写注册表Software\\Microsof ...

  2. Poco vs Boost(Poco也有不少优点,特别是网络功能更强)

    POCO的优点: 1) 比boost更好的线程库,特别是一个活动的方法的实现,并且还可设置线程的优先级. 2) 比 boost:asio更全面的网络库.但是boost:asio也是一个非常好的网络库. ...

  3. delphi的拖拽功能实现

    惭愧,编了这么多年程序,还没用过拖拽功能 这次同事要实现图标互换的功能,让我帮忙看一下,于是趁机研究了一下拖拽事件,发现还是比较简单的 参考了http://topic.csdn.net/u/20081 ...

  4. ArcGIS 10.3 for Server 在windows下的安装教程

    原文:ArcGIS 10.3 for Server 在windows下的安装教程 以下是10.2的教程,10.3同样适用. 许可文件: ArcGIS For Server10.3许可文件 - 下载频道 ...

  5. 什么是 MEF?

    什么是 MEF? Managed Extensibility Framework 即 MEF 是用于创建轻量.可扩展应用程序的库. 它让应用程序开发人员得以发现和使用扩展且无需配置. 它还让扩展开发人 ...

  6. ReportViewer,RDLC 报表开发之个性化样式

    原文:ReportViewer,RDLC 报表开发之个性化样式 报表开发中,客户对样式提出了要求: 1.工具栏上显示每页条数 2.只导出Excel,不需要下拉菜单. 3.报表上显示的图表,分页时,每页 ...

  7. win10应用开发——如何判断应用是在手机上运行还是电脑上运行

    原文:win10应用开发--如何判断应用是在手机上运行还是电脑上运行 在进行uwp应用开发的时候, 有时我们需要知道自己的应用是在手机端运行还是在桌面端运行,那么通过以下的api就可以进行判断: Wi ...

  8. Delphi 编写IC控件

    编写控件的基本步骤 1.确定一个祖先类 2.创建一个组件单元 3.在新控件中添加属性.方法和事件 事件定义方法如下: type private FOnClick:TNotifyEvent ;//( 声 ...

  9. 利用BLCR加速android的启动(zygote加入checkpoint支持)

    目前基于android4.2.2基线代码的blcr扩展,编译和启动是没有问题了,但是一重启就挂了. 弄这个有段时间了,很纠结,没有个可靠的结果,但是研究到现在,又舍不得放弃. 我想除了shuaiwen ...

  10. 使用Visual Studio开发Python

    Python优秀的集成开发环境有PyCharm,Visual Studio Code等,当然你仍然可以使用Visual Studio进行开发.如果你熟悉Visual Studio,使用Visual S ...