C++ Primer(Fifth Edition)由三位C++大师Stanley B. Lippman、Josée Lajoie和Barbara E. Moo合作完成,其中文译本《C++ Primer中文版(第5版)》也已出版。与上一版相比,这一版基于C++11标准进行了全面而彻底的内容更新;既是初学者的最佳指南,也是中高级程序员不可或缺的参考书。本书作为这部久负盛名的C++经典教程的配套习题解答,提供了C++ Primer(Fifth Edition)中英文版图书中所有习题的参考答案。
本书对使用C++ Primer(Fifth Edition)学习C++程序设计语言的读者来说是一本非常理想的参考书。
精解全书习题,浓缩名著精华,彻底无死角南开名师联合攻关,洞悉考察目的,掌握详细解法C++领域权威 潘爱民|孟岩作序,代表技术圈鼎力推荐一线C++工程师 Milo|刘未鹏|李云|陈梓瀚|侯峰林 高水准技术审校如果只读一本C++书籍,相信所有读过的人都会毫不犹豫选择本书,无论初学或老手即可用来理解C++11规则背后的原理,也可用其新语言特性与标准库来快速构建健壮程序
前言
C++语言是应用极为广泛的一门程序设计语言,难以计数的程序员已经通过旧版的C++ Primer学会了C++语言。
2011年,C++标准委员会发布了ISO C++标准的一个重要修订版。此修订版是C++进化过程中的最新一步,其目标是使得C++语言更统一、更简单、更安全、更高效。为此,三位C++大师Stanley B. Lippman、Josée Lajoie和Barbara E. Moo编著完成了C++ Primer(Fifth Edition),在旧版基础上基于C++11标准进行了全面而彻底的内容更新,重点讲解了C++11新特性以及这些新特性是如何影响C++语言的。C++ Primer(Fifth Edition)的中文译本《C++ Primer中文版(第5版)》也已由电子工业出版社出版。
本书是C++ Primer(Fifth Edition)的配套书籍,提供了该书所有习题的参考答案。在设计本书的行文格式时我们做了如下考虑:
在原书和习题解答之间建立良好衔接。
授之以鱼,不如授之以渔,要让读者明白怎么做以及为什么。
与C++11的目标保持一致,即简单高效。 前言
C++语言是应用极为广泛的一门程序设计语言,难以计数的程序员已经通过旧版的C++ Primer学会了C++语言。
2011年,C++标准委员会发布了ISO C++标准的一个重要修订版。此修订版是C++进化过程中的最新一步,其目标是使得C++语言更统一、更简单、更安全、更高效。为此,三位C++大师Stanley B. Lippman、Josée Lajoie和Barbara E. Moo编著完成了C++ Primer(Fifth Edition),在旧版基础上基于C++11标准进行了全面而彻底的内容更新,重点讲解了C++11新特性以及这些新特性是如何影响C++语言的。C++ Primer(Fifth Edition)的中文译本《C++ Primer中文版(第5版)》也已由电子工业出版社出版。
本书是C++ Primer(Fifth Edition)的配套书籍,提供了该书所有习题的参考答案。在设计本书的行文格式时我们做了如下考虑:
在原书和习题解答之间建立良好衔接。
授之以鱼,不如授之以渔,要让读者明白怎么做以及为什么。
与C++11的目标保持一致,即简单高效。
在每章的开始,我们设计了“导读”模块,目的是言简意赅地把本章的重要知识点串成一个整体,帮助读者梳理在本章应该学到哪些内容。之后的每个题目分为【出题思路】和【解答】两部分:其中【出题思路】站在出题者的角度阐述题目的考查角度和考查目的,【解答】则负责给出满足题目要求的代码及注释;为了开拓读者的思路,有的题目我们给出了不止一种解决方案。
衷心希望本书能对使用C++ Primer(Fifth Edition)学习C++的读者有所帮助。
由于编者水平有限,书中的不当之处恳请读者批评指正。
编 者
2014年11月
于南开园
Stanley B. Lippman目前是微软公司 Visual C++ 团队的架构师。他从1984年开始在贝尔实验室与C++的设计者Bjarne Stroustrup一起从事C++的设计与开发。他在迪士尼和梦工厂从事动画制作,还担任过JPL的高级顾问。
Josée Lajoie曾经是IBM加拿大研究中心C/C++编译器开发团队的成员,在ISO C++标准委员会工作了7年,担任过ISO核心语言工作组的主席和C++ Report杂志的专栏作家。
Barbara E. Moo是拥有25年软件经验的独立咨询顾问。在AT&T,她与Stroustrup、Lippman一起管理过复杂的C++开发项目。
第1章 开始 1
练习1.1~练习1.25
第2章 变量和基本类型 12
练习2.1~练习2.42
第3章 字符串、向量和数组 37
练习3.1~练习3.45
第4章 表达式 80
练习4.1~练习4.38
第5章 语句 99
练习5.1~练习5.25
第6章 函数 120
练习6.1~练习6.56
第7章 类 152
练习7.1~练习7.58
第8章 IO库 183
第1章 开始 1
练习1.1~练习1.25
第2章 变量和基本类型 12
练习2.1~练习2.42
第3章 字符串、向量和数组 37
练习3.1~练习3.45
第4章 表达式 80
练习4.1~练习4.38
第5章 语句 99
练习5.1~练习5.25
第6章 函数 120
练习6.1~练习6.56
第7章 类 152
练习7.1~练习7.58
第8章 IO库 183
练习8.1~练习8.14
第9章 顺序容器 193
练习9.1~练习9.52
第10章 泛型算法 234
练习10.1~练习10.42
第11章 关联容器 273
练习11.1~练习11.38
第12章 动态内存 297
练习12.1~练习12.33
第13章 拷贝控制 331
练习13.1~练习13.58
第14章 重载运算与类型转换 368
练习14.1~练习14.53
第15章 面向对象程序设计 399
练习15.1~练习15.42
第16章 模板与泛型编程 424
练习16.1~练习16.67
第17章 标准库特殊设施 458
练习17.1~练习17.39
第18章 用于大型程序的工具 483
练习18.1~练习18.30
第19章 特殊工具与技术 502
练习19.1~练习19.26