More Exceptional C++是廣受贊譽(yù)是Exceptional C++的續(xù)篇,它采用了行之有效的“提問/解答”的組織形式,提供了用C++解決現(xiàn)實世界問題的成功策略。根據(jù)多年程序開發(fā)的實踐經(jīng)驗、Herb Sutter向C++程序員提供了久經(jīng)考驗的程序設(shè)計技術(shù)和行之有效的解決方案,這些技術(shù)和方案對設(shè)計從小型工程到企業(yè)級應(yīng)用的現(xiàn)代軟件系統(tǒng)大有裨益。 圍繞著40個編程難題, More Exceptional C++引導(dǎo)你深刻理解成功的C++軟件設(shè)計和開發(fā)中至關(guān)重要的原則和議題。本續(xù)篇包括一些新的主題,強(qiáng)化了泛型程序設(shè)計、內(nèi)存管理、C++標(biāo)準(zhǔn)庫的使用等內(nèi)容,并涵蓋了traits和predicates這樣的重要技術(shù)。本書還就使用標(biāo)準(zhǔn)容器和算法時應(yīng)該牢記的準(zhǔn)則和要點(diǎn)進(jìn)行了分析——其它資料很少深入涉及這一主題。讀者可以在本書中找到以下重要問題的解決方案:使用std::map和std::set時會遇到哪些陷阱?如何安全地避免這些陷阱?何種predicates可以安全地和STL一起使用?何種不行?為什么?想通過“與模板協(xié)同工作的類型”的能力改變模板自身的行為嗎?有什么現(xiàn)有的技術(shù)可以寫出這種威力強(qiáng)大的通用模板代碼?何時應(yīng)該優(yōu)化你的代碼?如何優(yōu)化?為什么花哨的優(yōu)化會(而且的確會)讓我們陷入麻煩?如何你是在撰寫多線程安全代碼,這些問題的某些答案會如何變化?異常安全問題會影響到類的設(shè)計嗎?或者,它可以只是作為事后的改進(jìn)手段來使用嗎?在結(jié)合使用不同供應(yīng)商提供的基于繼承的程序庫時,如何避免連體雙嬰問題?如何安全地使用auto-ptr?如何運(yùn)用常見的設(shè)計模式來改裝它,使之消除常見缺陷?可以將auto-ptr用作類的成員嗎?在這樣做之前,你應(yīng)該了解些什么?還有,現(xiàn)代C++中最常見的問題之一:到底在何時使用名字空間?如何使用?More Exceptional C++是真正的程序員的必讀之物,在向你展示如何用C++撰寫優(yōu)質(zhì)代碼的同時,它為你提供了對語言徹底而實用的理解。作者Herb Sutter,他是C++軟件開發(fā)領(lǐng)域公認(rèn)的專家:在世界各地的各種技術(shù)會議上,他經(jīng)常應(yīng)邀發(fā)表演講。通過WWW.gotw.ca/eseminars,他每月數(shù)次在網(wǎng)上進(jìn)行技術(shù)討論直播。作為130多篇技術(shù)文章的作者,Herb同時還是ISO/ANSI C++標(biāo)準(zhǔn)委員會委員、C/C++ User Journal的特約撰稿人和專欄作家、前C++ Report主編。其廣受歡迎的“C++ Guru of the Week”系列發(fā)布在C++語言最主要的互聯(lián)網(wǎng)新聞組comp.lang.c++.moderated上——自1995年問世以來,他就開始主持這一新聞組。他是Exceptional C++:47 Engineering Puzzles,Programming Problems,and Solutions(Addison-Wealey,2000)的作者。請于www.gotw.ca和他聯(lián)絡(luò)。www.aw.com/csenghttp://www.gotw.ca/publications/mxc++.htm譯者於春景(網(wǎng)名lostmouse),1993年畢業(yè)于中南工業(yè)大學(xué)計算機(jī)科學(xué)系,一直從事計算機(jī)軟件開發(fā)工作,現(xiàn)任深圳唯特科技公司軟件經(jīng)理。