● 第1章 關於本章 1
1.1 閱讀本書所需具備的知識 2
1.2 本書的整體結構 2
1.3 如何閱讀本書 2
1.4 關於編程風格的一些說明 3
1.5 標準和現實 5
1.6 代碼例子和更多信息 5
1.7 反饋 5
第1部分 基礎 7
●
●第2章 函數模板 9
2.1 初探函數模板 9
2.1.1 定義模板 9
2.1.2 使用模板 10
2.2 實參的演繹(deduction) 12
2.3 模板參數 13
2.4 重載函數模板 15
2.5 小結 19
●
●第3章 類模板 21
3.1 類模板Stack的實現 21
3.1.1 類模板的聲明 22
3.1.2 成員函數的實現 23
3.2 類模板Stack的使用 25
3.3 類模板的特化 27
3.4 局部特化 29
3.5 缺省模板實參 30
3.6 小結 32
●
●第4章 非類型模板參數 33
4.1 非類型的類模板參數 33
4.2 非類型的函數模板參數 36
4.3 非類型模板參數的 37
4.4 小結 38
●
●第5章 技巧性基礎知識 39
5.1 關鍵字typename 39
5.2 使用this-> 41
5.3 成員模板 42
5.4 模板的模板參數 45
5.5 零初始化 51
5.6 使用字符串作為函數模板的實參 52
5.7 小結 55
●
●第6章 模板實戰 57
6.1 包含模型 57
6.1.1 鏈接器錯誤 57
6.1.2 頭文件中的模板 59
6.2 顯式實例化 60
6.2.1 顯式實例化的例子 61
6.2.2 整合包含模型和顯式實例化 62
6.3 分離模型 63
6.3.1 關鍵字export 63
6.3.2 分離模型的 65
6.3.3 為分離模型做好準備 66
6.4 模板和內聯 67
6.5 預編譯頭文件 68
6.6 調試模板 70
6.6.1 理解長段的錯誤信息 71
6.6.2 淺式實例化 72
6.6.3 長符號串 75
6.6.4 跟蹤程序 75
6.6.5 oracles 79
6.6.6 archetypes 80
6.7 本章後記 80
6.8 小結 81
●
●第7章 模板術語 83
7.1 “類模板”還是“模板類” 83
7.2 實例化和特化 84
7.3 聲明和定義 85
7.4 一處定義原則 86
7.5 模板實參和模板參數 86
●
●第2部分 深入模板 89
●
●第8章 深入模板基礎 91
8.1 參數化聲明 91
8.1.1 虛成員函數 94
8.1.2 模板的鏈接 95
8.1.3 基本模板 96
8.2 模板參數 96
8.2.1 類型參數 97
8.2.2 非類型參數 97
8.2.3 模板的模板參數 98
8.2.4 缺省模板實參 99
8.3 模板實參 100
8.3.1 函數模板實參 101
8.3.2 類型實參 103
8.3.3 非類型實參 105
8.3.4 模板的模板實參 107
8.3.5 實參的等價性 109
8.4 &nbs 109
8.4.1 &nbs函數 110
8.4.2 &nbs模板 113
8.5 本章後記 113
●
●第9章 模板中的名稱 115
9.1 名稱的分類 115
9.2 名稱查找 117
9.2.1 Argument-Dependent Lookup(ADL) 119
9.2.2 &nbs名稱插入 121
9.2.3 插入式類名稱 121
9.3 解析模板 123
9.3.1 非模板中的上下文相關性 123
9.3.2 依賴型類型名稱 125
9.3.3 依賴型模板名稱 127
9.3.4 using-declaration中的依賴型名稱 129
9.3.5 ADL和顯式模板實參 130
9.4 派生和類模板 131
9.4.1 非依賴型基類 131
9.4.2 依賴型基類 132
9.5 本章後記 134
●
●部分目錄
《C++ Templates中文版》是C++模板編程的接近指南,旨在通過基本概念、常用技巧和應用實例三方面的有用資料,為讀者打下C++模板知識的堅實基礎。
全書共22章。第1章全面介紹了《C++ Templates中文版》的內容結構和相關情況。第1部分(第2~7章)以教程的風格介紹了模板的基本概念,第2部分(第8~13章)闡述了模板的語言細節,第3部分(第14~18章)介紹了C++模板所支持的基本設計技術,第4部分(第19~22章)深入探討了各種使用模板的普通應用程序。附錄A和附錄B分別為一處定義原則和重載解析的相關資料。
《C++ Templates中文版》適合C++模板技術的初學者閱讀,也可供有一定編程經驗的C++程序員等