C 11 14 自動型別推導 auto

2021-07-05 02:26:10 字數 512 閱讀 7659

從c++11起,auto關鍵字不再表示儲存型別,而是成為了隱式型別定義關鍵字,其作用是讓編譯器在編譯期 便自動推斷出變數的型別。例如:

auto a = 1;                  // a 為 int 型變數

auto ptr = new auto( 1 ); // auto(1)==>int(1), ptr 為 int 型指標變數

const auto * q = &a, d = 1; // q 為 const int 型指標變數,d 後的 *= 1* 不可少

auto int b; // 錯誤:auto 不再表示儲存型別

auto c; // 錯誤:編譯器無法在編譯期自動推斷 c 的型別

在一行中定義多個變數時,自第二個變數開始,必須都賦初值,即便auto可以依據第乙個變數的賦值推斷出來。

(未完)

C 11 auto自動型別推導

1.auto型別推導auto x 5 正確,x是int型別 auto pi new auto 1 正確,批是int const auto v x,u 6 正確,v是const int 型別,u是const int static auto y 0.0 正確,y是double型別 auto int r ...

C 11 14特性備忘

template auto add t x,u y int array for auto x array include 建構函式列表初始化 class magic magic magic std vector int v 普通函式形參 void func std initializer list ...

模板型別推導 auto推導

effective modern c 果然是神書,乾貨滿滿,簡單記錄下。item1 模板推倒 典型的模板函式 temlate void fn paramtype param 要記住的東西 在模板型別推導的時候,有引用特性的引數的引用特性會被忽略 在推導通用引用引數的時候,左值會被特殊處理 在推導按值...