| | | Effective C++(中文版改善程序與設計的55個具體做法第3版)/傳世經典書叢 | 該商品所屬分類:計算機/網絡 -> 程序設計 | 【市場價】 | 609-883元 | 【優惠價】 | 381-552元 | 【介質】 | book | 【ISBN】 | 9787121123320 | 【折扣說明】 | 一次購物滿999元台幣免運費+贈品 一次購物滿2000元台幣95折+免運費+贈品 一次購物滿3000元台幣92折+免運費+贈品 一次購物滿4000元台幣88折+免運費+贈品
| 【本期贈品】 | ①優質無紡布環保袋,做工棒!②品牌簽字筆 ③品牌手帕紙巾
| |
版本 | 正版全新電子版PDF檔 | 您已选择: | 正版全新 | 溫馨提示:如果有多種選項,請先選擇再點擊加入購物車。*. 電子圖書價格是0.69折,例如了得網價格是100元,電子書pdf的價格則是69元。 *. 購買電子書不支持貨到付款,購買時選擇atm或者超商、PayPal付款。付款後1-24小時內通過郵件傳輸給您。 *. 如果收到的電子書不滿意,可以聯絡我們退款。謝謝。 | | | | 內容介紹 | |
![](https://bnmppic.bookuu.com/goods/16/55/59/1888752.jpg)
-
出版社:電子工業
-
ISBN:9787121123320
-
作者:(美)梅耶|譯者:侯捷
-
頁數:297
-
出版日期:2011-01-01
-
印刷日期:2011-01-01
-
包裝:平裝
-
開本:16開
-
版次:1
-
印次:1
-
字數:380千字
-
《More Effective C++:35個改善編程與設計的有效方法(中文版)》:傳世經典書叢
-
較少,頁數倒是多了一些,原因是這次選材比“第一集”更高階,尤其是第5章。Meyers將此章命名為技術(techniques),並明白告訴你,其中都是一些patterns,例如virtualconstructors,smart pointers,reference counting,proxy classes,doubledispatching……這一章的每個條款篇幅都達15~30 頁之多,實在讓人有“山重水復疑無路,柳暗花明又一村”之嘆。
雖然出版年代稍嫌久遠,但本書並沒有第2版,原因是當其出版之時(1996),C++Standard已經幾乎定案,本書即依當時的標準草案而寫,其與現今的C++標準規範幾乎相同。而且可能變化的幾個彈性之處,Meyers也都有所說明與提示。讀者可以登錄作者提供的網址,看看上下兩集的勘誤與討論(數量之多,令人驚恐。幸好多是技術討論或文字斟酌,並沒有什麼重大誤失)。
-
Scott Meyers是全世界*知名的c++軟件開發專家之一。他是暢銷書《Effective C++》繫列(Effective C++,More Fifective C++,Effective STL)的作者,義足創新產品《Effective c++CD》的設計者和作者,也是Addison-Wesley的“Effective Software Development Series”顧問編輯,以及《Software Development》雜志咨詢板成員。他也為若干新公司的技術咨詢板提供服務。Meyers於1993年白Brown大學獲得計算機博士學位。他的網址是WWW.aristeia.com。
-
譯序/vii 中英簡繁術語對照/ix 目錄/xvii 序言/xxi 致謝/xxiii 導讀/1 1. 讓自己習慣C++/11 Accustoming Yourself to C++/11 條款01:視C++ 為一個語言聯邦/11 View C++ as a federation of languages/11 條款02:盡量以const, enum, inline替換 #define/13 Prefer consts,enums, and inlines to #defines./13 條款03:盡可能使用const/17 Use const whenever possible./17 條款04:確定對像被使用前已先被初始化/26 Make sure that objects are initialized before they're used./26 2. 構造/析構/賦值運算/34 Constructors, Destructors, and Assignment Operators/34 條款05:了解C++ 默默編寫並調用哪些函數/34 Know what functions C++ silently writes and calls./34 條款06:若不想使用編譯器自動生成的函數,就該明確拒*/37 Explicitly disallow the use of compiler-generated functions you do not want./37 條款07:為多態基類聲明virtual析構函數/40 Declare destructors virtual in polymorphic base classes./40 條款08:別讓異常逃離析構函數/44 Prevent exceptions from leaving destructors./44 條款09:*不在構造和析構過程中調用virtual函數/48 Never call virtual functions during construction or destruction./48 條款10:令operator= 返回一個reference to *this/52 Have assignment operators return a reference to *this./52 條款11:在operator= 中處理“自我賦值”/53 Handle assignment to self in operator=./53 條款12:復制對像時勿忘其每一個成分/57 Copy all parts of an object./57 3. 資源管理/61 Resource Management/61 條款13:以對像管理資源/61 Use objects to manage resources./61 條款14:在資源管理類中小心copying行為/66 Think carefully about copying behavior in resource-managing classes./66 條款15:在資源管理類中提供對原始資源的訪問/69 Provide access to raw resources in resource-managing classes./69 條款16:成對使用new和delete時要采取相同形式/73 Use the same form in corresponding uses of new and delete./73 條款17:以獨立語句將newed對像置入智能指針/75 Store newed objects in smart pointers in standalone statements./75 4. 設計與聲明/78 Designs and Declarations/78 條款18:讓接口容易被正確使用,不易被誤用/78 Make interfaces easy to use correctly and hard to use incorrectly./78 條款19:設計class猶如設計type/84 Treat class design as type design./84 條款20:寧以pass-by-reference-to-const替換pass-by-value/86 Prefer pass-by-reference-to-const to pass-by-value./86 條款21:必須返回對像時,別妄想返回其reference/90 Don't try to return a reference when you must return an object./90 條款22:將成員變量聲明為private/94 Declare data members private./94 條款23:寧以non-member、non-friend替換member函數/98 Prefer non-member non-friend functions to member functions./98 條款24:若所有參數皆需類型轉換,請為此采用non-member函數/102 Declare non-member functions when type conversions should apply to all parameters./102 條款25:考慮寫出一個不拋異常的swap函數/106 Consider support for a non-throwing swap./106 5. 實現/113 Implementations/113 條款26:盡可能延後變量定義式的出現時間/113 Postpone variable definitions as long as possible./113 條款27:盡量少做轉型動作/116 Minimize casting./116 條款28:避免返回handles指向對像內部成分/123 Avoid returning "handles" to object internals./123 條款29:為“異常安全”而努力是值得的/127 Strive for exception-safe code./127 條款30:透徹了解inlining的裡裡外外/134 Understand the ins and outs of inlining./134 條款31:將文件間的編譯依存關繫降至*低/140 Minimize compilation dependencies between files./140 6. 繼承與面向對像設計/149 Inheritance and Object-Oriented Design/149 條款32:確定你的public繼承塑模出is-a關繫/150 Make sure public inheritance models "is-a."/150 條款33:避免遮掩繼承而來的名稱/156 Avoid hiding inherited names./156 條款34:區分接口繼承和實現繼承/161 Differentiate between inheritance of interface and inheritance of implementation./161 條款35:考慮virtual函數以外的其他選擇/169 Consider alternatives to virtual functions./169 條款36:*不重新定義繼承而來的non-virtual函數/178 Never redefine an inherited non-virtual function./178 條款37:*不重新定義繼承而來的缺省參數值/180 Never redefine a function's inherited default parameter value./180 條款38:通過復合塑模出has-a或"根據某物實現出"/184 Model "has-a" or "is-implemented-in-terms-of" through composition./184 條款39:明智而審慎地使用private繼承/187 Use private inheritance judiciously./187 條款40:明智而審慎地使用多重繼承/192 Use multiple inheritance judiciously./192 7. 模板與泛型編程/199 Templates and Generic Programming/199 條款41:了解隱式接口和編譯期多態/199 Understand implicit interfaces and compile-time polymorphism./199 條款42:了解typename的雙重意義/203 Understand the two meanings of typename./203 條款43:學習處理模板化基類內的名稱/207 Know how to access names in templatized base classes./207 條款44:將與參數無關的代碼抽離templates/212 Factor parameter-independent code out of templates./212 條款45:運用成員函數模板接受所有兼容類型/218 Use member function templates to accept "all compatible types."/218 條款46:需要類型轉換時請為模板定義非成員函數/222 Define non-member functions inside templates when type conversions are desired./222 條款47:請使用traits classes表現類型信息/226 Use traits classes for information about types./226 條款48:認識template元編程/233 Be aware of template metaprogramming./233 8. 定制new和delete/239 Customizing new and delete/239 條款49:了解new-handler的行為/240 Understand the behavior of the new-handler./240 條款50:了解new和delete的合理替換時機/247 Understand when it makes sense to replace new and delete./247 條款51:編寫new和delete時需固守常規/252 Adhere to convention when writing new and delete./252 條款52:寫了placement new也要寫placement delete/256 Write placement delete if you write placement new./256 9. 雜項討論/262 Miscellany/262 條款53:不要輕忽編譯器的警告/262 Pay attention to compiler warnings./262 條款54:讓自己熟悉包括TR1在內的標準程序庫/263 Familiarize yourself with the standard library, including TR1./263 條款55:讓自己熟悉Boost/269 Familiarize yourself with Boost./269 A 本書之外/273 B 新舊版條款對映/277 索引/280
<p>譯序<br /> 中英簡繁術語對照<br /> 目錄<br /> 序言<br /> 致謝<br /> 導讀<br /> 1. 讓自己習慣c++<br /> 2. 構造/析構/賦值運算<br /> 3. 資源管理<br /> 4. 設計與聲明<br /> 5. 實現<br /> 6. 繼承與面向對像設計<br /> 7. 模板與泛型編程<br /> 8. 定制new和delete<br /> 9. 雜項討論<br /> a 本書之外<br /> b 新舊版條款對照<br /> 索引</p>
| | | | | |