Create a gist now

Instantly share code, notes, and snippets.

What would you like to do?
template<typename InputIterator, typename T, typename Function>
T fold(InputIterator first, InputIterator last, T init, Function f)
{
T acc{ init };
while (first != last)
{
acc = f(acc, *first);
++first;
}
return acc;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment