Same asbut enforces the use of a checked iterator as output iterator. checked_replace_copy_if is defined in the stdext namespace.
This algorithm is a Microsoft extension to the Standard C++ Library. Code implemented using this algorithm will not be portable.
template<class InputIterator, class OutputIterator, class Predicate, class Type> OutputIterator checked_replace_copy_if( InputIterator _First, InputIterator _Last, OutputIterator _Result, Predicate _Pred, const Type& _Val );
An input iterator pointing to the position of the first element in the range from which elements are being replaced.
An input iterator pointing to the position one past the final element in the range from which elements are being replaced.
An output iterator pointing to the first element in the destination range to where the altered sequence of elements is being copied.
The old value of the elements being replaced.
The new value being assigned to the elements with the old value.