[section:replace_copy replace_copy]

[heading Prototype]

``
template<class ForwardRange, class OutputIterator, class Value>
OutputIterator replace_copy(const ForwardRange& rng, OutputIterator out,
                            const Value& what, const Value& with_what);
``

[heading Description]

`replace_copy` copy every element `x` in `rng` such that the corresponding element in the output range `y` is `x == what ? with_what : x`.

[heading Definition]

Defined in the header file `boost/range/algorithm/replace_copy.hpp`

[heading Requirements]

* `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`.

[heading Complexity]

Linear. `replace_copy` performs exactly `distance(rng)`.

[endsect]


