1. 內聯函數的運行速度比常規函數稍快,但佔用內存。要使用這項特性,需在函數聲明和定義前加上關鍵字incline。
2. 必須在聲明引用時將其初始化,且一旦與某個變量關聯起來,就不能改變。
3. 若將引用作爲函數的參數時,其實參應是變量,不能是表達式。
4. 對於形參爲const引用的C++函數,如果實參不匹配(實參類型正確,但不是左值;實參類型不正確,但可轉化爲正確的類型),則C++將創建類型正確的匿名變量,將函數調用的參數的值傳遞給該匿名變量。
5. C++11新增了右值引用,可指向右值,使用(&&)聲明。
6. 繼承的特徵:派生類繼承了基類的方法;基類引用可以指向派生類對象而無需進行強制類型轉換。
7. 存儲格式化設置並恢復:
8. 使用默認參數時,只有原型指定了默認值,函數定義與沒有默認參數時完全相同。
9. 使用被重載的函數時,需要在函數調用中使用正確的參數類型,否則參數會存在有幾種強制類型轉換的方式,而被拒絕調用。
10. 若要重載模板定義,被重載的模板的函數特徵標必須不同。
11. 顯式具體化提供一個具體化函數定義,當編譯器找到與函數調用匹配的具體化定義時,將使用該定義,而不再尋找模板。
注意:顯式具體化的原型和定義應以template<>開頭,並通過名稱指出類型;
具體化優先於常規模板,廢模板函數優先於具體化和常規模板。
12. 編譯器使用模板爲特定類型生成函數定義時,得到的是模板實例,這種實例化方式被稱爲隱式實例化。
13. 顯示實例化:在聲明前加上關鍵字template,並在函數名後用<>符號指示類型。
注意:不能再同意文件中使用同一種類型的顯示實例和顯式具體化。
14. C++11新增關鍵字decltype使用:decltype(expression)var;
若expression是一個沒有用()括起的標識符,則var的類型與expression相同,否則var爲指向其類型的引用;若expression是一個函數調用,則var類型與函數返回類型相同,但不實際調用函數;若以上條件均不滿足,則var類型與expression相同。
15. C++11後置返回類型: