На этом шаге мы перечислим все операции, выполняемые над строками.
В таблице 1 перечислены все операции, определенные для строк.
Операция | Описание |
---|---|
Конструкторы | Создание и копирование строк |
Деструктор | Уничтожение строк |
=, assign() | Присваивание нового значения |
swap() | Обмен содержимым двух строк |
+=, append(), push_back() | Присоединение символов |
insert() | Вставка символов |
erase() | Удаление символов |
clear() | Удаление всех символов (строка остается пустой) |
resize() | Изменение количества символов (удаление и присоединение символов в конце) |
replace() | Замена символов |
+ | Конкатенация строк |
==, !=, <, <=, >, >=, compare() | Сравнение строк |
size(), ength() | Получение количества символов |
max_size() | Получение максимально возможного количества символов |
empty() | Проверка пустой строки |
capacity() | Получение количества символов, которые могут храниться в памяти без перераспределения |
reserve() | Резервирование памяти для заданного количества символов |
[], at() | Обращение к символу |
>>, getline() | Чтение строковых данных из потока данных |
<< | Запись строковых данных в поток данных |
copy() | Копирование или запись содержимого строки в C-строку |
c_str() | Получение содержимого строки в виде C-строки |
data() | Получение содержимого строки в виде символьного массива |
substr() | Получение подстроки |
Поисковые функции | Поиск заданных подстрок и символов |
begin(), end() | Поддержка "нормальных" итераторов |
rbegin(), rend() | Поддержка обратных итераторов |
get_allocator() | Получение распределителя памяти |
На следующем шаге мы остановимся на аргументах операций над строками.