Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗cpPmLbRv 321 of 390 menu
◀ ▶

Результат лямбды в C++

Лямбда может отдать значение наружу. Для этого в теле пишут return и выражение. Вызов тогда получает этот результат:

int main() { auto twice = [](int x) { return x * 2; }; int result = twice(9); std::cout << result << "\n"; // выведет 18 return 0; }

Если тело занимает несколько строк, итог тоже задают через return:

int main() { auto clamp = [](int n) { int limit = 100; if (n > limit) { return limit; } return n; }; std::cout << clamp(150) << "\n"; // выведет 100 return 0; }

Лямбда может возвращать bool, строку или другой тип - главное, чтобы return отдавал нужное значение:

int main() { auto isEven = [](int n) { return n % 2 == 0; }; std::cout << isEven(4) << "\n"; // выведет 1 std::cout << isEven(5) << "\n"; // выведет 0 return 0; }

Создайте лямбду absDiff с двумя целыми параметрами, которая возвращает модуль их разности. Выведите результат для 3 и 10.

Создайте лямбду startsWithA с параметром типа std::string, которая возвращает true, если строка начинается с буквы "a". Выведите результаты для "apple" и "banana".

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить