Boost
C++ Libraries
...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
This is an older version of Boost and was released in 2018. The current version is 1.90.0.
template<class ForwardRange, class OutputIterator, class UnaryPredicate, class Value> OutputIterator replace_copy_if(const ForwardRange& rng, OutputIterator out, UnaryPredicate pred, const Value& with_what);
replace_copy_if copy
every element x in rng such that the corresponding element
in the output range y
is pred(x) ? with_what
: x.
Defined in the header file boost/range/algorithm/replace_copy_if.hpp
ForwardRange is a
model of the Forward
Range Concept.
ForwardRange is mutable.
Value is convertible
to ForwardRange's
value type.
Value is a model
of the AssignableConcept.
OutputIterator is
a model of the OutputIteratorConcept.
UnaryPredicate is
a model of the UnaryPredicateConcept.
Linear. replace_copy_if
performs exactly distance(rng) evaluations of pred.