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 the documentation for a snapshot of the develop branch, built from commit adcd4c09f0.
PrevUpHomeNext
basic_static_string::replace (13 of 14 overloads)

Replace a part of the string.

Synopsis
template<
    typename InputIterator>
constexpr basic_static_string&
replace(
    const_iterator i1,
    const_iterator i2,
    InputIterator j1,
    InputIterator j2);
Description

Replaces the characters in the range {i1, i2) with those of {j1, j2).

Precondition

{i1, i2)is a valid range. {j1, j2) is a valid range.

Exception Safety

Strong guarantee.

Remarks

All references, pointers, or iterators referring to contained elements are invalidated. Any past-the-end iterators are also invalidated.

Template Parameters

Type

Description

InputIterator

The type of the iterators.

Constraints

InputIteratorsatisfies InputIterator and does not satisfy ForwardIterator.

Return Value

*this

Parameters

Name

Description

i1

An iterator referring to the first character to replace.

i2

An iterator referring past the end of the last character to replace.

j1

An iterator referring to the first character to replace with.

j2

An iterator referring past the end of the last character to replace with.

Exceptions

Type

Thrown On

std::length_error

size() + (inserted - std::distance(i1, i2)) > max_size()


PrevUpHomeNext