C++ STL function that returns a 'vector of iterators' containing iterators to each value in the range[first, last) for which predicate holds true