C++ Strategies and Tactics (Paperback)
暫譯: C++ 策略與戰術 (平裝本)

Robert B. Murray

  • 出版商: Addison Wesley
  • 出版日期: 1993-03-10
  • 售價: $1,050
  • 貴賓價: 9.8$1,029
  • 語言: 英文
  • 頁數: 304
  • 裝訂: Paperback
  • ISBN: 0201563827
  • ISBN-13: 9780201563825
  • 相關分類: C++ 程式語言
  • 下單後立即進貨 (約5~7天)

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

相關主題

商品描述


Table Of Contents

Preface.
0. Introduction.
A Note about The Code Examples.
A Road Map.
Questions.
The Language Rules.

1. Abstraction.
A Telephone Number Abstraction.
Relationships Between Abstractions.
Worrying about the Boundary Conditions.
Designing with CRC Cards.
In Short.
Questions.

2. Classes.
Constructors.
Assignment.
Public Data.
Implicit Type Conversions.
Overloaded Operators: Members or Nonmembers?
Overloading, Defaults, and Ellipsis.
Const.
Returning References.
Static Constructors.
In Short.
Questions. CHAPTER = 3. Handles.
String Class.
Avoiding Copies with Use Counts.
Avoiding Recompilations: The Cheshire Cat.
Using Handles to Hide the Design.
Multiple Implementations.
Handles as Objects.
Summary.
In Short.
Questions.

4. Inheritance.
The is-a Relationship.
Public Inheritance.
Private Inheritance.
Protected Inheritance.
Conformance to Base Class Abstractions.
Pure Virtual Functions.
Inheritance Details and Traps.
In Short.
Questions.

5. Multiple Inheritance.
Multiple Inheritance as Set Intersection.
Virtual Base Classes.
Some Multiple Inheritance Details.
In Short.
Questions.

6. Designing for Inheritance.
The Protected Interface.
Should You Design for Inheritance?
Design for Inheritance: Some Examples.
Summary.
In Short.
Questions.

7. Templates.
A Pair Class Template.
Some Template Details.
Template Instantiation.
Smart Pointers.
Expression Arguments to Templates.
Function Templates.
In Short.
Questions.

8. Advanced Templates.
Container Classes Using Templates.
Example: A Block Class.
Detailed Block Design Issues.
Containers with Iterators: A List Class.
Iterator Design Issues.
Performance Issues.
Constraints on Template Arguments.
Template Specializations.
In Short.
Questions.

9. Reusability.
Discovery and Acquisition.
Robustness.
Memory Management.
Alternative Memory Allocation Schemes.
Passing Arguments to Operator New.
Managing External Resources.
Finding Memory Bugs.
Name Collisions.
Performance.
Don't Guess, Measure!
Algorithms.
Bottlenecks in Dynamic Memory Allocation.
Inlines.
Tiemann's Law.
In Short.
Questions.

10. Exceptions.
A Disclaimer.
Why Exceptions?
An Example Exception.
Exceptions Should Be Exceptional.
Understanding Exceptions.
Blame Assessment.
Designing the Exception Object.
In Short.
Questions.

11. Moving Your Project to C++.
Choosing C++.
Adopting C++.
Design and Implementation.
Developing an Asset Base.
A Closing Thought.
In Short.
Questions.

Index. 0201563827T04062001


Back to Top

商品描述(中文翻譯)

```
目錄

前言
0. 介紹
- 關於程式碼範例的說明
- 路線圖
- 問題
- 語言規則

1. 抽象
- 電話號碼的抽象
- 抽象之間的關係
- 擔心邊界條件
- 使用 CRC 卡進行設計
- 總結
- 問題

2. 類別
- 建構子
- 指派
- 公共資料
- 隱式型別轉換
- 重載運算子:成員或非成員?
- 重載、預設值和省略號
- 常數
- 返回參考
- 靜態建構子
- 總結
- 問題

3. 處理器
- 字串類別
- 使用計數避免複製
- 避免重新編譯:柴郡貓
- 使用處理器隱藏設計
- 多重實作
- 處理器作為物件
- 總結
- 總結
- 問題

4. 繼承
- is-a 關係
- 公共繼承
- 私有繼承
- 受保護繼承
- 符合基類抽象
- 純虛擬函數
- 繼承細節與陷阱
- 總結
- 問題

5. 多重繼承
- 多重繼承作為集合交集
- 虛擬基類
- 一些多重繼承的細節
- 總結
- 問題

6. 為繼承設計
- 受保護介面
- 是否應為繼承設計?
- 為繼承設計:一些範例
- 總結
- 總結
- 問題

7. 模板
- 一對類別模板
- 一些模板細節
- 模板實例化
- 智能指標
- 傳遞給模板的表達式參數
- 函數模板
- 總結
- 問題

8. 進階模板
- 使用模板的容器類別
- 範例:區塊類別
- 詳細的區塊設計問題
- 帶有迭代器的容器:列表類別
- 迭代器設計問題
- 性能問題
- 模板參數的限制
- 模板特化
- 總結
- 問題

9. 可重用性
- 發現與獲取
- 穩健性
- 記憶體管理
- 替代記憶體分配方案
- 傳遞參數給運算子 new
- 管理外部資源
- 尋找記憶體錯誤
- 名稱衝突
- 性能
- 不要猜測,測量!
- 演算法
- 動態記憶體分配的瓶頸
- 內聯
- 提曼法則
- 總結
- 問題

10. 異常
- 免責聲明
- 為什麼要有異常?
- 一個範例異常
- 異常應該是例外
- 理解異常
- 責任評估
- 設計異常物件
- 總結
- 問題

11. 將您的專案移至 C++
- 選擇 C++
- 採用 C++
- 設計與實作
- 開發資產基礎
- 結語
- 總結
- 問題

索引
```