以inline修飾的函式叫做內聯函式,編譯時c++編譯器會在呼叫內聯函式的地方展開,沒有函式壓棧的開銷,內聯函式提公升程式執行的效率。
特性:
c++11中,auto作為乙個新的型別指示符來指示編譯器,auto宣告的變數必須由編譯器在編譯時期推導而得
注:例:
int testauto()
int main()
auto使用規則:
int main()
void testauto()
auto不能推導的場景
1.auto不能作為函式的引數
//此處**編譯失敗,auto不能作為形參型別,因為編譯器無法對a的實際型別進行推導
void testauto
(auto a)
2.auto不能直接用來宣告陣列
void testauto()
; auto b=
;}
3.c++11只保留了auto作為型別指示符的用法
4.auto不能定義類的非靜態成員變數
5.例項化模板時不能使用auto作為模板引數
內聯函式,auto關鍵字(C 11)
1,inline修飾的函式叫內聯函式,編譯時c 編譯器會在呼叫內聯函式的地方展開,編譯期間編譯器會用函式體替換函式的呼叫,沒有函式壓棧的開銷,提公升了程式執行效率 2,檢視方式 在release模式下,檢視編譯器生成的彙編 中石否存在 call 函式名 在debug模式下,看是否有函式壓棧 3,特性...
auto關鍵字 decltype關鍵字
自動型別推斷 1 使用auto關鍵字的變數必須有初始值。在定義的時候進行初始化 2 函式引數和模板引數不能被宣告為auto。3 使用auto關鍵字進行型別推導時,如果初始化表示式是引用型別,編譯器會去除引用,除非顯示宣告 4 使用auto使用auto關鍵字進行型別推導時,編譯器會自動忽略頂層cons...
C 之auto關鍵字
在那些情況下要申明型別 定義變數型別 函式返回值,函式引數 表示式返回變數型別 為什麼auto 在開發實踐中,有時候我們並不能非常容易地確定乙個變數應該具有的資料型別。比如,將某個複雜表示式作為初始值賦值給乙個新定義的變數時,我們往往很難確定這個表示式的資料型別,從而無法確定變數應有的資料型別。為了...