内容简介
《21天学通C++(第7版)》是一本面向C++编程初学者的经典教程。本书通过21天的系统学习计划,帮助读者逐步掌握C++语言的核心概念和编程技巧。从基本语法、数据类型、控制结构开始,到面向对象编程、模板、标准模板库(STL)等高级主题,内容安排循序渐进,示例丰富。
第7版基于最新的C++11/14标准进行了全面更新,增加了对移动语义、lambda表达式、智能指针等现代C++特性的深入讲解。作者Siddhartha Rao以清晰的语言和大量的代码实例,将复杂的概念化繁为简,每章末尾还配有练习题和项目挑战,便于读者巩固所学知识。
本书适合无编程基础或有一定经验的读者自学使用,也可作为高校计算机相关专业的教学参考书。通过21天的坚持学习,读者将能够编写出高效、健壮的C++程序,并为深入学习更高级的C++技术打下坚实的基础。
目录
内容提要
其他
第1章 绪论
1.1 C++简史
1.2 编写C++应用程序
1.3 C++11新增的功能
1.4 总结
1.5 问与答
1.6 作业
第2章 C++程序的组成部分
2.1 Hello World程序的组成部分
2.2 名称空间的概念
2.3 C++代码中的注释
2.4 C++函数
2.5 使用std::cin和std::cout执行基本输入输出操作
2.6 总结
2.7 问与答
2.8 作业
第3章 使用变量和常量
3.1 什么是变量
3.2 编译器支持的常见C++变量类型
3.3 使用sizeof确定变量的长度
3.4 使用typedef替换变量类型
3.5 什么是常量
3.6 给变量和常量命名
3.7 不能用作常量或变量名的关键字
3.8 总结
3.9 问与答
3.10 作业
第4章 管理数组和字符串
4.1 什么是数组
4.2 多维数组
4.3 动态数组
4.4 C风格字符串
4.5 C++字符串:使用std::string
4.6 总结
4.7 问与答
4.8 作业
第5章 使用表达式、语句和运算符
5.1 语句
5.2 复合语句(语句块)
5.3 使用运算符
5.4 总结
5.5 问与答
5.6 作业
第6章 控制程序流程
6.1 使用if…else有条件地执行
6.2 在循环中执行代码
6.3 使用continue和break修改循环的行为
6.4 编写嵌套循环
6.5 总结
6.6 问与答
6.7 作业
第7章 使用函数组织代码
7.1 为何需要函数
7.2 使用函数处理不同类型的数据
7.3 微处理器如何处理函数调用
7.4 总结
7.5 问与答
7.6 作业
第8章 阐述指针和引用
8.1 什么是指针
8.2 动态内存分配
8.3 使用指针时常犯的编程错误
8.4 指针编程最佳实践
8.5 引用是什么
8.6 总结
8.7 问与答
8.8 作业
第9章 类和对象
9.1 类和对象
9.2 关键字public和private
9.3 构造函数
9.4 析构函数
9.5 复制构造函数
9.6 构造函数和析构函数的其他用途
9.7 this指针
9.8 将sizeof()用于类
9.9 结构不同于类的地方
9.10 声明友元
9.11 总结
9.12 问与答
9.13 作业
第10章 实现继承
10.1 继承基础
10.2 私有继承
10.3 保护继承
10.4 切除问题
10.5 多继承
10.6 总结
10.7 问与答
10.8 作业
第11章 多态
11.1 多态基础
11.2 使用虚继承解决菱形问题
11.3 可将复制构造函数声明为虚函数吗
11.4 总结
11.5 问与答
11.6 作业
第12章 运算符类型与运算符重载
12.1 C++运算符
12.2 单目运算符
12.3 双目运算符
12.4 函数运算符operator()
12.5 不能重载的运算符
12.6 总结
12.7 问与答
12.8 作业
第13章 类型转换运算符
13.1 为何需要类型转换
13.2 为何有些C++程序员不喜欢C风格类型转换
13.3 C++类型转换运算符
13.4 C++类型转换运算符存在的问题
13.5 总结
13.6 问与答
13.7 作业
第14章 宏和模板简介
14.1 预处理器与编译器
14.2 使用#define定义常量
14.3 使用#define编写宏函数
14.4 模板简介
14.5 总结
14.6 问与答
14.7 作业
第15章 标准模板库简介
15.1 STL容器
15.2 STL迭代器
15.3 STL算法
15.4 使用迭代器在容器和算法之间交互
15.5 STL字符串类
15.6 总结
15.7 问与答
15.8 作业
第16章 STL string类
16.1 为何需要字符串操作类
16.2 使用STL string类
16.3 基于模板的STL string实现
16.4 总结
16.5 问与答
16.6 作业
第17章 STL动态数组类
17.1 std::vector的特点
17.2 典型的vector操作
17.3 理解大小和容量
17.4 STL deque 类
17.5 总结
17.6 问与答
17.7 作业
第18章 STL list和forward_list
18.1 std::list的特点
18.2 基本的list操作
18.3 对list中的元素进行反转和排序
18.4 总结
18.5 问与答
18.6 作业
第19章 STL集合类
19.1 简介
19.2 STL set和multiset的基本操作
19.3 使用STL set和multiset的优缺点
19.4 总结
19.5 问与答
19.6 作业
第20章 STL映射类
20.1 STL映射类简介
20.2 std::map和std::multimap的基本操作
20.3 提供自定义的排序谓词
20.4 总结
20.5 问与答
20.6 作业
第21章 理解函数对象
21.1 函数对象与谓词的概念
21.2 函数对象的典型用途
21.3 总结
21.4 问与答
21.5 作业
第22章 C++lambda表达式
22.1 lambda表达式是什么
22.2 如何定义lambda表达式
22.3 一元函数对应的lambda表达式
22.4 一元谓词对应的lambda表达式
22.5 通过捕获列表接受状态变量的lambda表达式
22.6 lambda表达式的通用语法
22.7 二元函数对应的lambda表达式
22.8 二元谓词对应的lambda表达式
22.9 总结
22.10 问与答
22.11 作业
第23章 STL算法
23.1 什么是STL算法
23.2 STL算法的分类
23.3 使用STL算法
23.4 总结
23.5 问与答
23.6 作业
第24章 自适应容器:栈和队列
24.1 栈和队列的行为特征
24.2 使用STL stack类
24.3 使用STL queue类
24.4 使用STL优先级队列
24.5 总结
24.6 问与答
24.7 作业
第25章 使用STL位标志
25.1 bitset类
25.2 使用std::bitset及其成员
25.3 vector
25.4 总结
25.5 问与答
25.6 作业
第26章 理解智能指针
26.1 什么是智能指针
26.2 智能指针是如何实现的
26.3 智能指针类型
26.4 深受欢迎的智能指针库
26.5 总结
26.6 问与答
26.7 作业
第27章 使用流进行输入和输出
27.1 流的概述
27.2 重要的C++流类和流对象
27.3 使用std::cout将指定格式的数据写入控制台
27.4 使用std::cin进行输入
27.5 使用std::fstream处理文件
27.6 使用std::stringstream对字符串进行转换
27.7 总结
27.8 问与答
27.9 作业
第28 章异常处理
28.1 什么是异常
28.2 导致异常的原因
28.3 使用try和catch捕获异常
28.4 异常处理的工作原理
28.5 总结
28.6 问与答
28.7 作业
第29章 继续前行
29.1 当今的处理器有何不同
29.2 如何更好地利用多个内核
29.3 编写杰出的C++代码
29.4 更深入地学习C++
29.5 总结
29.6 问与答
29.7 作业
附录A 二进制和十六进制
A.1 十进制
A.2 二进制
A.3 十六进制
A.4 不同进制之间的转换
附录B C++关键字
附录C 运算符优先级
附录D 答案
附录E ASCII码
您当前的等级为
登录后免费下载登录
小黑屋反思中,不准下载!
评论后刷新页面下载评论
支付¥以后下载
请先登录
您今天的下载次数(次)用完了,请明天再来
支付积分以后下载立即支付
支付以后下载立即支付
您当前的用户组不允许下载升级会员
您已获得下载权限
您可以每天下载资源次,今日剩余次
免责申明:
1. 本站分享的所有书籍均来源于自互联网,我们只进行收集整理,并不对书籍内容进行更改。
2. 部分书籍中可能有书籍压制者放置的广告,这并不是本站所为,请注意甄别。
3. 我们分享这些书籍,纯粹是出于知识分享的热情,以及对互联网分享精神的高度认同和践行,不以盈利为目的。
4. 本站分享的所有书籍,仅供个人学习研究使用,请勿用于任何商业用途,否则产生的一切法律纠纷与本站无关。
5. 如果这些书籍让你有所收获,在条件允许的情况下,请一定购买正版书籍,这是对创作者最好的支持。
6. 如果您是此书籍的版权所有者,且您不希望此作品出现在本站,请联系我们,我们将在收到您的请求后48小时内予以删除。