Как работает общая лямбда в C ++ 14?

Как работает общая лямбда (auto ключевое слово как тип аргумента) в стандарте C ++ 14?

Основан ли он на шаблонах C ++, где для каждого другого типа аргумента компилятор генерирует новую функцию с тем же телом, но замененными типами (полиморфизм во время компиляции), или он больше похож на Java?s дженерики (стирание типа)?

Пример кода:

auto glambda = [](auto a) { return a; };

Ответы на вопрос(3)

Ваш ответ на вопрос