C 必知必會

2021-06-08 16:29:24 字數 1478 閱讀 9793

條款2 多型 2

條款3 設計模式 5

條款4 stl 8

條款5 引用是別名而非指標 10

條款6 陣列形參 13

條款7 常量指標與指向常量的指標 16

條款8 指向指標的指標 19

條款9 新式轉型操作符 21

條款10 常量成員函式的含義 25

條款11 編譯器會在類中放東西 29

條款12 賦值和初始化並不相同 31

條款13 複製操作 34

條款14 函式指標 37

條款15 指向類成員的指標並非指標 40

條款16 指向成員函式的指標並非指標 43

條款17 處理函式和陣列宣告 46

條款18 函式物件 48

條款19 command模式與好萊塢法則 52

條款20 stl函式物件 55

條款21 過載與重寫並不相同 58

條款22 template method模式 60

條款23 名字空間 62

條款24 成員函式查詢 66

條款25 實參相依的查詢 68

條款26 操作符函式查詢 70

條款27 能力查詢 72

條款28 指標比較的含義 75

條款29 虛建構函式與prototype模式 77

條款30 factory method模式 79

條款31 協變返回型別 82

條款32 禁止複製 85

條款33 製造抽象基類 86

條款34 禁止或強制使用堆分配 88

條款35 placement new 90

條款36 特定於類的記憶體管理 93

條款37 陣列分配 97

條款38 異常安全公理 100

條款39 異常安全的函式 103

條款40 raii 106

條款41 new、建構函式和異常 110

條款42 智慧型指標 112

條款43 auto_ptr非同尋常 114

條款44 指標算術 116

條款45 模板術語 119

條款46 類模板顯式特化 121

條款47 模板區域性特化 125

條款48 類模板成員特化 129

條款49 利用typename消除歧義 132

條款50 成員模板 136

條款51 採用template消除歧義 140

條款52 針對型別資訊的特化 142

條款53 嵌入的型別資訊 146

條款54 traits 149

條款55 模板的模板引數 154

條款56 policy 159

條款57 模板實參推導 163

條款58 過載函式模板 167

條款59 sfinae 169

條款60 泛型演算法 172

條款61 只例項化要用的東西 176

條款62 包含哨位 179

條款63 可選的關鍵字 181 

C 必知必會 placement new

placement new placement new 是過載operator new的乙個標準 全域性的版本,它不能被自定義的版本代替 不像普通的operator new和operator delete能夠被替換成使用者自定義的版本 它的原型如下 void operator new size t,...

C 必知必會(4)

直接呼叫建構函式是行不通的,然而可以通過使用placement new來哄騙編譯器呼叫建構函式 void operatornew size t,void p throw placement new是operator new的乙個標準的過載版本,也位於全域性名字空間中,但和我們通常看到的operato...

C 必知必會(6)

見一下stack介面卡採用預設deque的例子 template class stack r operator a1 a1,a2 a2 const private r fp a1,a2 直接例項化這個模板有點麻煩 boolisgreater int,int std sort b,e,pfun2 is...