Мне нужен аналог функции Haskell foldl
для сворачивания любых контейнеров STL. Ожидаемая сигнатура выглядит следующим образом:
template Iterator, FoldingFunction, Result
Result foldl(
Iterator begin,
Iterator end,
FoldingFunction f,
Result initValue);
Стандартный STL не имеет такой функции. Boost есть?
Я знаю, что это довольно просто реализовать, но я хотел бы знать, есть ли готовая стандартизированная реализация.
И еще один вопрос: как вы обычно сворачиваете списки данных в C ++ / STL?