天天看點

auto類型說明符

一、關鍵點

auto讓編譯器通過初始值來推算變量的類型

如:auto i = 2;    //等價于int i = 2;

二、與複合類型、常量的結合

1. 引用

int i = 0, &r = i;
	auto sz = r;          //sz的類型為r所綁定的對象i的類型
      

  以引用對象的類型作為auto的類型。

2. const

auto會忽略掉頂層const,而底層const則會保留下來。

auto b = ci;		//ci的頂層const被忽略 
	auto c = cr;		//cr是ci的别名,ci本身是一個頂層const 
	auto d = &i;		//d指向整型i
	auto e = &ci;		//e指向整型常量ci,對常量對象取位址是一種底層const 
      

如果希望auto類型是一個頂層const,可以這樣:const auto f = ci; 

繼續閱讀