C 11新特性說明

2021-10-10 07:54:42 字數 678 閱讀 7467

#include #include #include void test_auto()

//c++11之前需要寫明變數的型別

list::iterator it = ::find(c.begin(), c.end(), "12");

//c++11之後可以使用auto來定義,ide自動推斷其型別

auto it2 = ::find(c.begin(), c.end(), "12");

//錯誤:auto只能用來定義,不能用來宣告

//auto it3; //錯誤方式

}

#include #include #include void test_for_range()

//c++11之前通過迭代器進行遍歷

for (auto it1 = c.begin(); it1 != c.end(); it1++)

cout << endl;

//c++11之後直接通過for range進行遍歷,**精簡很多

//by value

for (auto it2: c)

cout << endl;

//by reference

for (auto& it3 : c)

cout << endl;

}

C 11新特性學習

lambda表示式用於建立匿名的函式物件,語法為 函式可訪問的的外部變數 函式引數 返回值型別 如 int a 1,b 2 int c b int x int b 表示函式中可以訪問外部變數b,而且引數b是按值傳遞,b 表示引數b是按引用傳遞,表示可以訪問所有外部變數,並且是用按值傳遞方式,類似,也...

C 11 新特性試用

在c 11之前,auto關鍵字用來指定儲存期。在新標準中,它的功能變為型別推斷。auto現在成了乙個型別的佔位符,通知編譯器去根據初始化 推斷所宣告變數的真實型別。各種作用域內宣告變數都可以用到它。例如,名空間中,程式塊中,或是for迴圈的初始化語句中。auto i 42 i is an int a...

C 11 新特性總結

vs2012以上版本支援 一.auto的使用 auto func less 自動表示函式指標 auto ite vector a.begin 自動表示stl的迭代器 auto p new foo 自動表示變數指標等變數 二.decltype int x 3 decltype x y x 從變數或表示...