C 學習筆記(三) auto的用法

2021-09-25 06:29:03 字數 608 閱讀 7938

1、auto變數必須在定義時初始化

auto a1 = 10;//正確

auto b1;//錯誤,編譯器無法推導b1的型別

b1 = 10;

2、定義在乙個auto序列的變數必須始終推導成同一型別

auto a4 = 10, a5;//正確

auto b4, b5 = 20.0;//錯誤,沒有推導為同一型別

3、初始化表示式為陣列時,auto關鍵字推導型別為指標

int a3[3] = ;

auto b3 = a3;

cout << typeid(b3).name() << endl; //輸出int * (輸出與編譯器有關)

4、若表示式為陣列且auto帶上&,則推導型別為陣列型別

int a7[3] = ;

auto& b7 = a7;

cout << typeid(b7).name() << endl; //輸出int [3] (輸出與編譯器有關)

5、c++14中,auto可以作為函式的返回值型別和引數型別,也就是返回值可以直 接用auto代替

C 學習(一) auto的用法

在c 11標準之前,auto是乙個說明符,表示變數為自動變數,但是在c 中,一般把變數預設為自動儲存,所以關鍵字auto很少用到。在c 11標準實行後,auto不再是說明符,它被重新定義,用於自動型別推斷,比如 auto n 100 n is int auto x 1.5 x is double a...

C 的auto用法學習

學習內容參考 auto 可以在宣告變數的時候根據變數初始值的型別自動為此變數選擇匹配的型別,類似的關鍵字還有decltype。auto關鍵字必須在定義的時候賦予初始化值 類似於const 在沒有auto的時候,我們操作標準庫時經常需要這樣 include includeint main 使用auto...

c 學習筆記十九 關於auto

在早期c c 中auto的含義是 使用auto修飾的變數,是具有自動儲存器的區域性變數。c 11中,auto有了全新的含義即 auto不再是乙個儲存型別指示符,而是作為乙個新的型別 指示符來指示編譯器,auto宣告的變數必須由編譯器在編譯時期推導而得。通俗地講,auto關鍵字是可以自動推導變數型別的...