我也讀了C++ 14 lambda表達式通用與auto
參數的關係實際上是模板,所以下面是有效的C++ 14一般C++ 14個lambda表達式與模板
auto glambda = [] (auto a) { return a; };
cout << glambda(23); // Prints 23
cout << glambda('A'); // Prints A
這不與我從模板中知道的東西完全疊加......實例化點在哪裏?如果第一個呼叫實例化一個帶有int
的模板,而第二個帶有char
,則它存儲在glambda
變量中的內容是什麼?
[這次談話在2015年cppcon(https://www.youtube.com/watch?v=WXeu4fj3zOs)是非常相關的(好!)。 *「來自第一原理的Lambdas:C++的旋風之旅」* –