Тимур Думлер
Компания: JetBrains
Появившиеся в С++11 лямбда-выражения являются одним из наиболее мощных и полезных инструментов в языке. Каждое последующее обновление стандарта добавляет новые возможности для лямбд: в С++14 появились generic лямбды и захваты с инициализатором, в С++17 constexpr лямбды, в С++20 default-construction и assignment лямбд, явные шаблонные параметры и другое, а в грядущем стандарте С++23 будет еще больше интересных возможностей.
В докладе рассматривается ряд интересных паттернов программирования с лямбдами. Некоторые из них уже хорошо известные идиомы; другие менее известные и даже неожиданные. Обсуждается наследование от лямбд с использованием pack expansion, три разных метода вызвать лямбду рекурсивно, ответ на вопрос «что произойдет, если мы присвоим немедленно вызываемое лямбда-выражение статическому объекту» и многое другое.
Компания: JetBrains
Компания: gapfruit