iterator insert(const_iterator position, const T& x);
iterator insert(const_iterator position, T&& x);
iterator insert(const_iterator position, size_type n, const T& x);
template <class InputIterator>
iterator insert(const_iterator position, InputIterator first, InputIterator last);
iterator insert(const_iterator position, initializer_list<T>);
template <class... Args> reference emplace_back(Args&&... args);
template <class... Args> iterator emplace(const_iterator position, Args&&... args);
void push_back(const T& x);
void push_back(T&& x);
Remarks: Вызывает перераспределение, если новый размер больше старого. Перераспределение делает недействительными все ссылки, указатели и итераторы, относящиеся к элементам в последовательности. Если перераспределения не происходит, все итераторы и ссылки до точки вставки остаются действительными. Если исключение создается не конструктором копирования, конструктором перемещения, оператором присваивания или оператором присваивания перемещения T или какой-либо InputIterator операцией, эффекты отсутствуют. Если при вставке одного элемента в конце возникает исключение, которое T есть CopyInsertable или is_nothrow_move_constructible_v<T> есть true, никаких эффектов нет. В противном случае, если конструктор перемещения не-CopyInsertable T, генерирует исключение , эффекты не определены.
Complexity: Сложность линейна по количеству вставленных элементов плюс расстояние до конца вектора.
iterator erase(const_iterator position);
iterator erase(const_iterator first, const_iterator last);
void pop_back();
Complexity: Деструктором объекта T называется количество раз, равное количеству стертых элементов, а оператором присваивания T вызывается количество раз, равное количеству элементов в векторе после стертых элементов.