На этом шаге мы перечислим основные операции создания, копирования и уничтожения векторов.
В таблице 1 перечислены конструкторы и деструктор векторов. Векторы создаются с инициализацией элементов или без нее. Если
передается только размер, элементы создаются конструктором по умолчанию. Обратите внимание: явный вызов конструктора по
умолчанию также инициализирует базовые типы (в частности, int) нулями; эта особенность языка описана на шаге 34.
Некоторые из возможных источников инициализации упоминаются на шаге 125.
Таблица 1. Конструкторы и деструкторы векторов
Операция | Описание |
---|---|
vector с | Создает пустой вектор, не содержащий ни одного элемента |
vector<Elem> c1(c2) | Создает копию другого вектора того же типа (с копированием всех элементов) |
vector<Elem> с(n) | Создает вектор из n элементов, создаваемых конструктором по умолчанию |
vector<Elem> c(n,elem) | Создает вектор, инициализируемый n копиями элемента elem |
vector<Elem> c(beg, end) | Создает вектор, инициализируемый элементами интервала [beg,end) |
c.~vector<Elem>() | Уничтожает все элементы и освобождает память |
На следующем шаге мы рассмотрим немодифицирующие операции над векторами.