auto 和 decltype (C++11 新增)

紅色字體爲我的推斷,可信度自辨。函數

藍色字體爲重點。字體

 

auto類型說明符:使用auto時,編譯器會分析表達式,並自動推算出變量所屬類型。*auto變量必須有初值spa

原理:編譯器經過 初值 來判斷auto變量所屬類型。具體匹配規則不清。但整形和浮點推斷爲int和double。編譯器

須要注意:編譯

  1)auto sz = 0, pi = 3.14;  // 錯誤。sz和pi的類型不一致。變量

 

decltype類型指示符:獲得表達式對應類型。原理

使用時機:引用

  1)須要表達式對應類型,但不須要表達式的值。co

  2)須要函數返回類型。錯誤

須要注意:

  1)若是返回類型是引用,則必須初始化。

  2)decltype((variable)) 當使用雙層括號時,結果必定是引用。

相關文章
相關標籤/搜索