C ++ 11 Заменить `auto` лямбду на другую лямбду?
Скажем, у меня есть следующая переменная, содержащая лямбду:
auto a = [] { return true; };
И я хочуa
возвращатьfalse
позже. Могу ли я сделать что-то подобное?
a = [] { return false; };
Этот синтаксис дает мне следующие ошибки:
binary '=' : no operator found which takes a right-hand operand of type
'main::<lambda_a7185966f92d197a64e4878ceff8af4a>' (or there is no acceptable conversion)
IntelliSense: no operator "=" matches these operands
operand types are: lambda []bool ()->bool = lambda []bool ()->bool
Есть ли способ добиться чего-то подобного? Я хотел бы изменитьauto
переменная в другую лямбду. Я начинающий, поэтому мне не хватает некоторых знаний оauto
или лямбды. Благодарю.