C++ 編程慣用法-高級程序員常用方法和技巧 (C++ Strategies and Tactics) C++编程惯用法——高级程序员常用方法和技巧(异步图书) (C和C++实务精选)

Robert B. Murray

  • 出版商: 人民郵電
  • 出版日期: 2012-10-01
  • 定價: $234
  • 售價: 8.5$199
  • 語言: 簡體中文
  • 頁數: 242
  • ISBN: 7115290849
  • ISBN-13: 9787115290847
  • 相關分類: C++ 程式語言

已絕版

買這商品的人也買了...

相關主題

商品描述

<內容簡介>

在Robert B.Murray所著的《C++編程慣用法——高級程序員常用方法和技巧》中,C++專家Robert B. Murray與我們分享了他寶貴的經驗和建議,以幫助初中級C++程序員得到進一步的提高。
    《C++編程慣用法——高級程序員常用方法和技巧》總共分為11章,先後介紹了抽象、類、句柄、繼承、多重繼承、考慮繼承的設計、模板的高級用法、重用、異常以及向C++的移植等相關的諸多話題。在書中,作者大量採用了實際開發中的代碼作為示例,向讀者展示了那些有用的編程策略,並對那些有害的做法進行了警示。為了幫助讀者更好地理解,在每一章結束前,在該章中介紹過的主要內容都被放到了一個列表中,此外,書中還給出了一些問題來激勵讀者們進行更多的思考和討論。
    《C++編程慣用法——高級程序員常用方法和技巧》適合具有一定C++編程經驗的程序員和項目經理閱讀,也適合對C++編程的高級主題感興趣的讀者參考。

<目錄>

第1章  抽象  1
  1.1  有關電話號碼的抽象模型  3
  1.2  抽象模型間的關係  5
  1.3  請考慮邊界條件  10
  1.4  使用CRC卡片來輔助設計  10
  1.5  小結  11
  1.6  問題  11
第2章  類  13
  2.1  構造函數  13
  2.2  賦值  21
  2.3  公用數據  23
  2.4  隱式類型轉換  27
  2.5  操作符重載:成員或非成員?  33
  2.6  重載、默認值以及省略符  35
  2.7  Const  37
  2.8  返回值為引用  44
  2.9  靜態對象的構造  44
  2.10  小結  46
  2.11  問題  46
第3章  句柄  49
  3.1  一個String類  49
  3.2  使用計數器來避免多份拷貝  51
  3.3  避免進行重編譯:Cheshire Cat  56
  3.4  使用句柄來隱藏設計  58
  3.5  多種實現  59
  3.6  作為對象的句柄  63
  3.7  綜述  63
  3.8  小結  63
  3.9  問題  64
第4章  繼承  67
  4.1  is-a關係  67
  4.2  公有繼承  72
  4.3  私有繼承  73
  4.4  保護型繼承  75
  4.5  與基類抽象的一致性  75
  4.6  純虛函數  78
  4.7  有關繼承的細節和陷阱  80
  4.8  小結  83
  4.9  問題  84
第5章  多重繼承  85
  5.1  作為交集的多重繼承  85
  5.2  虛基類  89
  5.3  一些有關多重繼承的細節問題  93
  5.4  小結  95
  5.5  問題  95
第6章  考慮繼承的設計  97
  6.1  被保護的接口  97
  6.2  我們的設計是否應該考慮到繼承?  101
  6.3  一些為繼承所做的設計的例子  105
  6.4  結論  111

  6.5  小結  111
  6.6  問題  111
第7章  模板  113
  7.1  模板類Pair  115
  7.2  一些有關模板的細節  117
  7.3  模板的實例化  118
  7.4  智能指針  120
  7.5  作為模板參數的表達式  126
  7.6  模板函數  128
  7.7  小結  131
  7.8  問題  132
第8章  模板的高級用法  135
  8.1  使用了模板的容器類  135
  8.2  示例:Block  137
  8.3  有關Block的設計細節  140
  8.4  帶有迭代器的容器:List  144
  8.5  迭代器的設計細節  151
  8.6  性能上的考慮  154
  8.7  對模板參數的限制  157
  8.8  模板特化  159
  8.9  小結  165
  8.10  問題  166
第9章  重用  169
  9.1  發現和獲得  170
  9.2  健壯性  171
  9.3  內存管理  177
  9.4  可選的內存分配方案  179
  9.5  傳遞參數給operator new  183
  9.6  管理外部資源  185
  9.7  尋找有關內存的bug  185
  9.8  名字衝突  190
  9.9  性能  194
  9.10  不要去猜想,而應該度量!  194
  9.11  演算法  195
  9.12  動態內存分配中的瓶頸  196
  9.13  內嵌  201
  9.14  Tiemann法則  203
  9.15  小結  204
  9.16  問題  205
第10章  異常  207
  10.1  一個負面的聲明  207
  10.2  為什麼需要異常?  209
  10.3  一個異常的例子  210
  10.4  異常只應該用來表述異常情況  211
  10.5  理解異常  213
  10.6  責任評估  213
  10.7  設計異常對象  215
  10.8  小結  218
  10.9  問題  218
第11章  向C++移植  221

  11.1  選擇使用C++  221
  11.2  採用C++  223
  11.3  設計和實現  224
  11.4  開發一個堅實的基礎  227
  11.5  相關的思考  227
  11.6  小結  227
  11.7  問題  228