Почему этот код недействителен?
auto foo=[](){
return {1,2};
};
Однако это справедливо, так как initializer list
используется для инициализации vector
не для возврата:
auto foo=[]()->std::vector<int>{
return {1,2};
};
Почему я не могу вернуть initializer list
? Это может быть полезно. Например, лямбда, которая может быть использована для инициализации vector
или list
или... с некоторыми значениями по умолчанию для чего-то.