Здравствуйте, Alexey Nikitin, Вы писали:
AN>Здравствуйте, Videoman, Вы писали:
V>>Правда уродский синтаксис вызова, но там уже всё уродское, на мой взгляд
AN>Синтаксис вызова можно подправить, прикопав уродскость поглубже)
AN>AN>auto sum = [](auto begin, auto end){
AN> auto sum_impl = [](auto begin, auto end, auto func) -> int {
AN> return (begin != end) ? func(begin + 1, end, func) + *begin : 0;
AN> };
AN> return sum_impl(begin, end, sum_impl);
AN> };
AN>
А если надо захватывать переменные? Перезахватывать их глубже тоже? Нормальная тема.