#include <iostream>
int main(){
auto lambda = [] {
return 7;
};
std::cout << lambda() << '\n';
}
这个程序编译并打印7。
根据返回值7,将 lambda 的返回类型推导为整数类型。
为什么普通函数不能做到这一点呢?
#include <iostream>
auto function(){
return 42;
}
int main(){
std::cout << function() << '\n';
}
错误: “ function”函数使用“ auto”类型说明符,但没有尾随返回类型