Здравствуйте, rg45, Вы писали:
bnk>>numbers_in.filter(x => x % 2 == 0).map(x => x / 2)
R>Ну ты же жульничаешь — ты не положил числа в выходной массив. Ты предоставть законченное решение, тогда и сравним.
R>И запись, с которой сравниваешь, удалил зачем-то. Наверное, для того, чтобы сделать сравнение максимально наглядным
Ну совсем немного и сжульничал
R>А во-вторых, в С++ тоже можно решить эту задачу в функциональном стиле и с lazy evaluation. Необходимая поддержка для этого давно уже есть в boost и сравнительно недавно появилась в стандартной библиотеке, в std::ranges:
R>R>numbers_in | filtered([](int x) { return !(x % 2); }) | transformed([](int x) { return x / 2; })
R>
R>Ну да, в C++ лябмды выглядят не столь компактными как в "нормальных" языках, но мы же не состязаемся в синтаксическом кариесе, правда?
Ну, да, выглядит получше. Хотя "=>" вместо того ужаса, что есть была бы как-то понятнее IMHO.