На этом шаге мы еще раз перечислим основные операции над контейнерами.
В таблице 1 перечислены операции, общие для всех контейнеров. Некоторые из них более подробно описаны в следующих шагах.
Операция | Описание |
---|---|
ContType с | Создает пустой контейнер, не содержащий элементов |
ContType c1(c2) | Создает копию контейнера того же типа |
ContType c(beg,end) | Создает контейнер и инициализирует его копиями всех элементов в интервале [beg,end) |
с.~ContType() | Удаляет все элементы и освобождает память |
c.size() | Возвращает фактическое количество элементов |
c.empty() | Проверяет, пуст ли контейнер (эквивалент size()==0, но иногда выполняется быстрее) |
c.max_size() | Возвращает максимально возможное количество элементов |
с1==с2 | Проверяет равенство с1 и с2 |
с1 != с2 | Проверяет неравенство с1 и с2 (эквивалентно !(c1==c2)) |
c1 < с2 | Проверяет, что c1 меньше с2 |
c1 > с2 | Проверяет, что c1 больше с2 |
c1 <= с2 | Проверяет, что c1 не больше с2 |
c1 >= с2 | Проверяет, что c1 не меньше с2 |
c1 = с2 | Присваивает c1 все элементы с2 |
с1.swap(c2) | Меняет местами содержимое c1 и с2 |
swap(c1,c2) | To же, но в форме глобальной функции |
c.begin() | Возвращает итератор для первого элемента |
c.end() | Возвращает итератор для позиции за последним элементом |
c.rbegin() | Возвращает обратный итератор для первого элемента при переборе в обратном направлении |
c.rend() | Возвращает обратный итератор для позиции за последним элементом при переборе в обратном направлении |
c.insert(pos,elem) | Вставляет копию elem (с разными вариантами возвращаемого значения и интерпретацией первого аргумента) |
c.erase(beg,end) | Удаляет все элементы из интервала [beg,end) (некоторые контейнеры) |
с.сlеаr() | Удаляет из контейнера все элементы (контейнер остается пустым) |
c.get_allocator() | Возвращает модель памяти контейнера |
На следующем шаге мы рассмотрим особенности инициализации контейнера.