我正在尝试使用 lambda 表达式初始化一个变量。我还没有听说这是否可能,所以这可能吗? 例如:
int i([]() { return 1; });
返回
error C2440: 'initializing' : cannot convert from 'wmain::<lambda_b35514739a4854f3d329a617eabe58c1>' to 'int'
这个操作是否可行,只是我的语法错误?
最佳答案
您正在尝试使用 lambda 对象而不是评估 lambda 的结果来初始化变量:
int i([]() { return 1; }());
// ^^
关于c++ - 通过 lambda 表达式初始化变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17932024/