VSH
Мастер
(1816)
11 месяцев назад
C++ лямбда-функцию можно объявить с помощью синтаксиса, который включает в себя квадратные скобки для захвата переменных, круглые скобки для параметров и фигурные скобки для тела функции. Правильный способ среди предложенных вариантов:
[]() {}
Но чтобы лямбда-функция была полезной, вам нужно будет либо сразу её вызвать, либо присвоить её переменной. Чтобы это сделать, воспользуйтесь следующей формой, которая позволяет присвоить лямбду переменной и затем использовать как обычную функцию:
auto lambda = []() {
// Тело функции
};
Если лямбда-функция должна что-то принимать как аргументы, указывайте эти аргументы в круглых скобках:
auto lambda = [](int a, int b) {
return a + b;
};
И если вы хотите указать возвращаемый тип, используйте стрелку после параметров:
auto lambda = [](int a, int b) -> int {
return a + b;
};
1) lambda {} 2) function() => {} 3) auto lambda = {} 4) []() {}