文章出處

C/C++ 98標準 C++03標準

  早在C++98標準中就存在了auto關鍵字,那時的auto用于聲明變量為自動變量,自動變量意為擁有自動的生命期。此用法是多余的,因為即使定義變量時不加"auto",變量也會有自動的生命期。用法如下:

auto int b = 20 ; //擁有自動生命期
int a =10 ;  //同樣擁有自動生命期

  在C++11中,已經刪除了此用法。

C++11標準 

  C++11引入auto類型說明符,用它能實現讓編譯器替我們分析表達式所屬的類型。auto讓編譯器通過初始值來推算變量的類型。顯然,auto定義的變量必須有初始值。

  比如,auto Sum =a1+a2;若a1、a2是float類型,則Sum的類型就是float;若a1、a2是某個類的對象,則Sum也為該類的對象;

  使用auto也能在一條語句聲明多個變量,但是基本數據類型必須相同,如:

auto i=0,*p=&i;             //正確,i是整數,p是整形指針
auto sz=0,pi=3.14;      //錯誤,sz和pi類型不一致

 


文章列表




Avast logo

Avast 防毒軟體已檢查此封電子郵件的病毒。
www.avast.com


全站熱搜
創作者介紹
創作者 大師兄 的頭像
大師兄

IT工程師數位筆記本

大師兄 發表在 痞客邦 留言(0) 人氣()