C++ Primer(Fifth Edition)由三位C++大師Stanley B. Lippman、Josée Lajoie和Barbara E. Moo合作完成,其中文譯本《C++ Primer中文版(第5版)》也已出版。與上一版相比,這一版基于C++11標(biāo)準(zhǔn)進(jìn)行了全面而徹底的內(nèi)容更新;既是初學(xué)者的最佳指南,也是中高級(jí)程序員不可或缺的參考書。本書作為這部久負(fù)盛名的C++經(jīng)典教程的配套習(xí)題解答,提供了C++ Primer(Fifth Edition)中英文版圖書中所有習(xí)題的參考答案。
本書對(duì)使用C++ Primer(Fifth Edition)學(xué)習(xí)C++程序設(shè)計(jì)語言的讀者來說是一本非常理想的參考書。
精解全書習(xí)題,濃縮名著精華,徹底無死角南開名師聯(lián)合攻關(guān),洞悉考察目的,掌握詳細(xì)解法C++領(lǐng)域權(quán)威 潘愛民|孟巖作序,代表技術(shù)圈鼎力推薦一線C++工程師 Milo|劉未鵬|李云|陳梓瀚|侯峰林 高水準(zhǔn)技術(shù)審校如果只讀一本C++書籍,相信所有讀過的人都會(huì)毫不猶豫選擇本書,無論初學(xué)或老手即可用來理解C++11規(guī)則背后的原理,也可用其新語言特性與標(biāo)準(zhǔn)庫來快速構(gòu)建健壯程序
前言
C++語言是應(yīng)用極為廣泛的一門程序設(shè)計(jì)語言,難以計(jì)數(shù)的程序員已經(jīng)通過舊版的C++ Primer學(xué)會(huì)了C++語言。
2011年,C++標(biāo)準(zhǔn)委員會(huì)發(fā)布了ISO C++標(biāo)準(zhǔn)的一個(gè)重要修訂版。此修訂版是C++進(jìn)化過程中的最新一步,其目標(biāo)是使得C++語言更統(tǒng)一、更簡單、更安全、更高效。為此,三位C++大師Stanley B. Lippman、Josée Lajoie和Barbara E. Moo編著完成了C++ Primer(Fifth Edition),在舊版基礎(chǔ)上基于C++11標(biāo)準(zhǔn)進(jìn)行了全面而徹底的內(nèi)容更新,重點(diǎn)講解了C++11新特性以及這些新特性是如何影響C++語言的。C++ Primer(Fifth Edition)的中文譯本《C++ Primer中文版(第5版)》也已由電子工業(yè)出版社出版。
本書是C++ Primer(Fifth Edition)的配套書籍,提供了該書所有習(xí)題的參考答案。在設(shè)計(jì)本書的行文格式時(shí)我們做了如下考慮:
在原書和習(xí)題解答之間建立良好銜接。
授之以魚,不如授之以漁,要讓讀者明白怎么做以及為什么。
與C++11的目標(biāo)保持一致,即簡單高效。 前言
C++語言是應(yīng)用極為廣泛的一門程序設(shè)計(jì)語言,難以計(jì)數(shù)的程序員已經(jīng)通過舊版的C++ Primer學(xué)會(huì)了C++語言。
2011年,C++標(biāo)準(zhǔn)委員會(huì)發(fā)布了ISO C++標(biāo)準(zhǔn)的一個(gè)重要修訂版。此修訂版是C++進(jìn)化過程中的最新一步,其目標(biāo)是使得C++語言更統(tǒng)一、更簡單、更安全、更高效。為此,三位C++大師Stanley B. Lippman、Josée Lajoie和Barbara E. Moo編著完成了C++ Primer(Fifth Edition),在舊版基礎(chǔ)上基于C++11標(biāo)準(zhǔn)進(jìn)行了全面而徹底的內(nèi)容更新,重點(diǎn)講解了C++11新特性以及這些新特性是如何影響C++語言的。C++ Primer(Fifth Edition)的中文譯本《C++ Primer中文版(第5版)》也已由電子工業(yè)出版社出版。
本書是C++ Primer(Fifth Edition)的配套書籍,提供了該書所有習(xí)題的參考答案。在設(shè)計(jì)本書的行文格式時(shí)我們做了如下考慮:
在原書和習(xí)題解答之間建立良好銜接。
授之以魚,不如授之以漁,要讓讀者明白怎么做以及為什么。
與C++11的目標(biāo)保持一致,即簡單高效。
在每章的開始,我們設(shè)計(jì)了“導(dǎo)讀”模塊,目的是言簡意賅地把本章的重要知識(shí)點(diǎn)串成一個(gè)整體,幫助讀者梳理在本章應(yīng)該學(xué)到哪些內(nèi)容。之后的每個(gè)題目分為【出題思路】和【解答】兩部分:其中【出題思路】站在出題者的角度闡述題目的考查角度和考查目的,【解答】則負(fù)責(zé)給出滿足題目要求的代碼及注釋;為了開拓讀者的思路,有的題目我們給出了不止一種解決方案。
衷心希望本書能對(duì)使用C++ Primer(Fifth Edition)學(xué)習(xí)C++的讀者有所幫助。
由于編者水平有限,書中的不當(dāng)之處懇請(qǐng)讀者批評(píng)指正。
編 者
2014年11月
于南開園
Stanley B. Lippman目前是微軟公司 Visual C++ 團(tuán)隊(duì)的架構(gòu)師。他從1984年開始在貝爾實(shí)驗(yàn)室與C++的設(shè)計(jì)者Bjarne Stroustrup一起從事C++的設(shè)計(jì)與開發(fā)。他在迪士尼和夢工廠從事動(dòng)畫制作,還擔(dān)任過JPL的高級(jí)顧問。
Josée Lajoie曾經(jīng)是IBM加拿大研究中心C/C++編譯器開發(fā)團(tuán)隊(duì)的成員,在ISO C++標(biāo)準(zhǔn)委員會(huì)工作了7年,擔(dān)任過ISO核心語言工作組的主席和C++ Report雜志的專欄作家。
Barbara E. Moo是擁有25年軟件經(jīng)驗(yàn)的獨(dú)立咨詢顧問。在AT&T,她與Stroustrup、Lippman一起管理過復(fù)雜的C++開發(fā)項(xiàng)目。
第1章 開始 1
練習(xí)1.1~練習(xí)1.25
第2章 變量和基本類型 12
練習(xí)2.1~練習(xí)2.42
第3章 字符串、向量和數(shù)組 37
練習(xí)3.1~練習(xí)3.45
第4章 表達(dá)式 80
練習(xí)4.1~練習(xí)4.38
第5章 語句 99
練習(xí)5.1~練習(xí)5.25
第6章 函數(shù) 120
練習(xí)6.1~練習(xí)6.56
第7章 類 152
練習(xí)7.1~練習(xí)7.58
第8章 IO庫 183
第1章 開始 1
練習(xí)1.1~練習(xí)1.25
第2章 變量和基本類型 12
練習(xí)2.1~練習(xí)2.42
第3章 字符串、向量和數(shù)組 37
練習(xí)3.1~練習(xí)3.45
第4章 表達(dá)式 80
練習(xí)4.1~練習(xí)4.38
第5章 語句 99
練習(xí)5.1~練習(xí)5.25
第6章 函數(shù) 120
練習(xí)6.1~練習(xí)6.56
第7章 類 152
練習(xí)7.1~練習(xí)7.58
第8章 IO庫 183
練習(xí)8.1~練習(xí)8.14
第9章 順序容器 193
練習(xí)9.1~練習(xí)9.52
第10章 泛型算法 234
練習(xí)10.1~練習(xí)10.42
第11章 關(guān)聯(lián)容器 273
練習(xí)11.1~練習(xí)11.38
第12章 動(dòng)態(tài)內(nèi)存 297
練習(xí)12.1~練習(xí)12.33
第13章 拷貝控制 331
練習(xí)13.1~練習(xí)13.58
第14章 重載運(yùn)算與類型轉(zhuǎn)換 368
練習(xí)14.1~練習(xí)14.53
第15章 面向?qū)ο蟪绦蛟O(shè)計(jì) 399
練習(xí)15.1~練習(xí)15.42
第16章 模板與泛型編程 424
練習(xí)16.1~練習(xí)16.67
第17章 標(biāo)準(zhǔn)庫特殊設(shè)施 458
練習(xí)17.1~練習(xí)17.39
第18章 用于大型程序的工具 483
練習(xí)18.1~練習(xí)18.30
第19章 特殊工具與技術(shù) 502
練習(xí)19.1~練習(xí)19.26