[capture list] (params list) mutable exception-> return type
各項具體含義如下
capture list:捕獲外部變數列表
params list:形參列表
mutable指示符:用來說用是否可以修改捕獲的變數
exception:異常設定
return type:返回型別
function body:函式體
應用形式可以修改捕獲的外部變數。
#include#include#includeusing namespace std;
int main(int argc, char** argv)
; auto res = func(s1);
cout << res << endl;
}
輸出:
1
[root@localhost c++11]#
1)如果function body中存在return語句,則該lambda表示式的返回型別由return語句的返回型別確定;
2)如果function body中沒有return語句,則返回值為void型別。
#include#include#includeusing namespace std;
int main(int argc, char** argv)
; auto res = func(s1);
cout << res << endl;
}
輸出
1.1
[root@localhost c++11]#
c 11 lambda 匿名函式
include include using namespace std placeholders lambda即匿名函式 intmain 格式 captures params ret auto func lambda中變數擷取 不擷取任何變數 擷取外部作用域中所有變數,並作為引用在函式體中使用 擷取...
C 11 Lambda表示式(匿名函式)
c 11引入了lambda表示式,使得程式設計師可以定義匿名函式,該函式是一次性執行的,既方便了程式設計,又能防止別人的訪問。lambda表示式的語法通過下圖來介紹 這裡假設我們定義了乙個如上圖的lambda表示式。現在來介紹途中標有編號的各個部分是什麼意思。lambda表示式的引入標誌,在 裡面可...
C 11 Lambda表示式(匿名函式)詳解
使用 stl 時,往往會大量用到函式物件,為此要編寫很多函式物件類。有的函式物件類只用來定義了乙個物件,而且這個物件也只使用了一次,編寫這樣的函式物件類就有點浪費。而且,定義函式物件類的地方和使用函式物件的地方可能相隔較遠,看到函式物件,想要檢視其 operator 成員函式到底是做什麼的也會比較麻...