????C++11??????lambda????????贸??????????????????????煤????????????械???????????????????????????
????Lambda?????????????????????

??????????????????????????????lambda??????????????????斜??斜???????????????????
????Lambda????????????????‘[]’???????????‘=’??‘&’?????lambda????“????”??lambda??????????? scope?????????????????????????????????‘&’?????????????‘=’??????????????????????????????
????Lambda???????????斜?
????Mutable ???
?????????
?????????
????“????”?澹�???lambda??????????械???????
????????????????尾?????????
????int x = 10;
????int y = 3;
????int z ;
????z = [=]()mutable throw() -> int { int n = x + y; x = y ; y = n; return n;}();
????cout<<z<<endl;
????cout<<"x:"<<x<<" "<<"y:"<<y<<endl;
???????薪?????
????13
????x: 10  y: 3
???????????????????????x??y????x??y???????蟹??????
?????????????lambda?????????????????些???????????????????
???????????????????????lambda???????娲�???????
#include <iostream>
using namespace std;
int main()
{
int n = [] (int x?? int y) { return x + y; }(5?? 4);
cout << n << endl;
}
???????薪?????9
?????????????????????????????“??????”?????‘()’?????????
?????????????????????????????????煤?????????lambda??????????芯?????????????????????????貌?????????????????梅???????
#include <iostream>
using namespace std;
int main()
{
auto f = [] (int x?? int y) { return x + y; };
cout << f(21?? 12) << endl;
}
???????薪?????33