Элементы функционального программирования в C++: композиции отображений
Комментарии (1)
16 мая 2017 в 14:18
0↑
↓
Спасибо за статью. Интересно.
Не совсем понятен вопрос, в чём преимущество перед диапазонами? Вы сами про них упоминаете, но в чём их минусы? Почему бы не пользоваться ими?
Там компонуемость лучше, написание функций проще и без макросов. Тот же пример из документации:std::vector
vi{1,2,3,4,5,6,7,8,9,10}; using namespace ranges; auto rng = vi | view::remove_if([](int i){return i % 2 == 1;}) | view::transform([](int i){return std::to_string(i);}); // rng == {"2","4","6","8","10"};
Ничто не мешает пользоваться ими уже сейчас. Да, не в std, но ranges-v3 уже работающая header-only имплементация. Принести её в проект ничего не стоит.