Обобщенная лямбда в C++
В C++14 параметр лямбды можно объявить как
auto - так появляется
обобщенная лямбда с шаблонным
operator().
Тип аргумента выводится при каждом вызове,
отдельная переменная std::function
не обязательна. Запишем лямбду с
auto, вызовем с int и
выведем результат:
#include <iostream>
auto twice = [](auto value) {
return value + value;
};
std::cout << twice(5) << "\n";
Объявите лямбду с auto, возвращающую
удвоенное значение. Выведите результат
для 11.
Запишите лямбду с auto, которая
возвращает сумму аргумента и 1.
Передайте long со значением
3 и выведите ответ.