Пространства имён
Варианты
Действия

std::basic_string<CharT,Traits,Allocator>::insert

Материал из cppreference.com
< cpp‎ | string‎ | basic string
 
 
 
std::basic_string
 
basic_string& insert( size_type index, size_type count, CharT ch );
(1)
basic_string& insert( size_type index, const CharT* s );
(2)
basic_string& insert( size_type index, const CharT* s, size_type count );
(3)
basic_string& insert( size_type index, const basic_string& str );
(4)
basic_string& insert( size_type index, const basic_string& str,
                      size_type index_str, size_type count );
(5)
iterator insert( iterator pos, CharT ch );
iterator insert( const_iterator pos, CharT ch );
(6) (до C++11)
(начиная с C++11)
void insert( iterator pos, size_type count, CharT ch );
iterator insert( iterator pos, size_type count, CharT ch );
(7) (до C++11)
(начиная с C++11)
template< class InputIt >

void insert( iterator i, InputIt first, InputIt last );
template< class InputIt >

iterator insert( const_iterator i, InputIt first, InputIt last );
(8) (до C++11)

(начиная с C++11)
iterator insert( const_iterator pos, std::initializer_list<CharT> ilist );
(9) (начиная с C++11)

Вставка символов в строку:

1) Вставляет count символов ch в позицию index
2) Вставляет строку с завершающим нулевым символом, на которую указывает s, в позицию index. Длина строки определяется по вхождению первого нулевого символа (фактически вызывает Traits::length(s)).
3) Вставляет первые count символов из строки, на которую указывает s, в позицию index. Строка s может содержать нулевые символы.
4) Вставляет строку str в позицию index
5) Вставляет строку, полученную с помощью str.substr(index_str, count), в позицию index
6) Вставляет символ ch перед символом в позиции pos
7) Вставляет count символов ch перед символом в позиции pos
8) Вставляет символы из диапазона [first, last)
9) Вставляет элементы из списка инициализации ilist

Содержание

[править] Параметры

index позиция, в которую будут вставлены данные
pos итератор, перед которым будут вставлены данные
ch символ для вставки
count количество символов для вставки
s указатель на вставляемую строку символов
str строка для вставки
first, last диапазон, определяющий символы для вставки
index_str позиция первого символа для вставки в строке str
ilist список инициализации из которого будет вставлены символы
Требования к типам
-
InputIt должен соответствовать требованиям InputIterator.

[править] Возвращаемое значение

1-5) *this
6-9) итератор, указывающий на первый вставленный символ или pos, если ничего не было вставлено

[править] Исключения

1) std::out_of_range, если index > size() и std::length_error, если size() + count > max_size().
2) std::out_of_range, если index > size() и std::length_error, если size() + Traits::length(s) > max_size().
3) std::out_of_range, если index > size() и std::length_error, если size() + count > max_size().
4) Генерирует исключение в следующих ситуациях:
a) std::out_of_range, если index > size().
b) std::length_error, если size() + str.size() > max_size(), где ins_count - количество символов, которое будет вставлено.
5) Генерирует исключение в следующих ситуациях:
a) std::out_of_range, если index > size().
b) std::out_of_range, если index_str > str.size().
c) std::length_error, если size() + ins_count > max_size(), где ins_count - количество символов, которое будет вставлено.
6-9) (Нет)

[править] См. также

добавляет символы в конец строки
(public функция-член) [править]
добавление символа в конец строки
(public функция-член) [править]