Поделиться через


vector (STL/CLR)

Описание объекта класса шаблона, что элементы управления менять- длины последовательность элементов с прямой доступ. Используется контейнер vector для управления последовательность элементов в непрерывном блоке хранилища. Блок реализуется как массив, который увеличивается по требованию.

В описании ниже, GValue совпадает с Value если здесь не будет ссылочного типа, в случае которого это Value^.

template<typename Value>
    ref class vector
        :   public
        System::ICloneable,
        System::Collections::IEnumerable,
        System::Collections::ICollection,
        System::Collections::Generic::IEnumerable<GValue>,
        System::Collections::Generic::ICollection<GValue>,
        System::Collections::Generic::IList<GValue>,
        Microsoft::VisualC::StlClr::IVector<GValue>
    { ..... };

Параметры

  • Значение
    Тип элемента в управляемой последовательности.

Члены

Определение типа

Описание

vector::const_iterator (STL/CLR)

Тип постоянного итератора для управляемой последовательности.

vector::const_reference (STL/CLR)

Тип постоянной ссылки на элемент.

vector::const_reverse_iterator (STL/CLR)

Тип константы обратного итератора для контролируемой последовательности.

vector::difference_type (STL/CLR)

Тип расстояния со знаком между двумя элементами.

vector::generic_container (STL/CLR)

Тип универсального интерфейса для контейнера.

vector::generic_iterator (STL/CLR)

Тип итератора для универсального интерфейса для контейнера.

vector::generic_reverse_iterator (STL/CLR)

Тип обратного итератора для универсального интерфейса для контейнера.

vector::generic_value (STL/CLR)

Тип элемента для универсального интерфейса для контейнера.

vector::iterator (STL/CLR)

Тип итератора для управляемой последовательности.

vector::reference (STL/CLR)

Тип ссылки на элемент.

vector::reverse_iterator (STL/CLR)

Тип обратного итератора для контролируемой последовательности.

vector::size_type (STL/CLR)

Тип расстояния со знаком между двумя элементами.

vector::value_type (STL/CLR)

Тип элемента.

Функция Member

Описание

vector::assign (STL/CLR)

Заменяет все элементы.

vector::at (STL/CLR)

Получает элемент в указанной позиции.

vector::back (STL/CLR)

Получает последний элемент.

vector::begin (STL/CLR)

Задает начало управляемой последовательности.

vector::capacity (STL/CLR)

Возвращает объем пространства, выделенного для хранения контейнера.

vector::clear (STL/CLR)

Удаляет все элементы.

vector::empty (STL/CLR)

Тесты отсутствуют ли какие-либо элементы.

vector::end (STL/CLR)

Задает конец управляемой последовательности.

vector::erase (STL/CLR)

Удаляет элементы в указанных положениях.

vector::front (STL/CLR)

Получение первого элемента.

vector::insert (STL/CLR)

Добавляет элементы в указанной позиции.

vector::pop_back (STL/CLR)

Удаляет последний элемент.

vector::push_back (STL/CLR)

Добавляет новый последний элемент.

vector::rbegin (STL/CLR)

Задает начало обратной управляемой последовательности.

vector::rend (STL/CLR)

Задает конец обратной управляемой последовательности.

vector::reserve (STL/CLR)

Предоставляет минимальные ресурсы роста для контейнера.

vector::resize (STL/CLR)

Изменяет количество элементов.

vector::size (STL/CLR)

Подсчитывает количество элементов.

vector::swap (STL/CLR)

Меняет местами содержимое двух контейнеров.

vector::to_array (STL/CLR)

Копирует контролируемая последовательность в новый массив.

vector::vector (STL/CLR)

Создает объект контейнера.

Свойство

Описание

vector::back_item (STL/CLR)

Получает последний элемент.

vector::front_item (STL/CLR)

Получение первого элемента.

Оператор

Описание

vector::operator= (STL/CLR)

Заменяет контролируемая последовательность.

vector::operator[] (STL/CLR)

Получает элемент в указанной позиции.

operator!= (vector) (STL/CLR)

Определяет, является ли объект vector не равен другому объекту vector.

operator< (vector) (STL/CLR)

Определяет, является ли объект vector меньше другой объект vector.

operator<= (vector) (STL/CLR)

Определяет, является ли объект vector меньше или равно другому объекту vector.

operator== (vector) (STL/CLR)

Определяет, является ли объект vector равен другому объекту vector.

operator> (vector) (STL/CLR)

Определяет, является ли объект vector больше другого объекта vector.

operator>= (vector) (STL/CLR)

Определяет, является ли объект vector больше или равно другому объекту vector.

Интерфейсы

Интерфейс

Описание

ICloneable

Дублируйте объект.

IEnumerable

Последовательность между элементами.

ICollection

Обеспечение группу в составе элементы.

IEnumerable

Через последовательность типизированных элементов.

ICollection

Обеспечение группу в составе типизированных элементов.

IList

Maintain является группу в составе типизированных элементов.

IVector<Value>

Обслуживайте универсальный контейнер.

Заметки

Объект выделяет и освобождает хранилище для последовательности его элементов управления с помощью сохраненного массив элементов Value, который увеличивается по требованию. Рост происходит таким образом, что затраты добавить новый элемент амортизирована постоянно время. Другими словами, стоимость добавлений элементов в конце не растет, в среднем, как длина контролируемой последовательности получает крупнее. Таким образом, вектор хорошим кандидатом для основного контейнера для шаблона класса stack (STL/CLR).

vector поддерживает произвольного доступа являются итераторы. это означает, что можно непосредственно ссылается на элемент заданного численную свою позицию, подсчитывая с нуля первого (переднего) элемента, в vector::size (STL/CLR)() - 1 для последнего (заднего) элемента. Это также означает, что вектор хорошим кандидатом для основного контейнера для шаблона класса priority_queue (STL/CLR).

Итератор вектора содержит дескриптор его связанный объект вектора вместе с смещением элемента он указывает. Можно использовать итераторы только со связанными объектами контейнера. Смещение элементов вектора совпадает с его положение.

Вставка или стирать элементы могут изменять значения элемента, хранящегося в заданном положении, поэтому значение значение итератором также может изменить. (Контейнер может копировать элементы вверх или вниз, чтобы создать передать перед вставкой или заполнить передать после стирания). Однако итератор вектора остается допустимым, пока его смещение в диапазоне [0, vector::size (STL/CLR)()]. Кроме того, допустимый итератор остается dereferencable -- его можно использовать для доступа или изменения значения элемента он обозначает -- при его смещение не равно size().

Стирающ или удаление элементов вызывает деструктор этого сохраненного значения. Удалить контейнер удаляются все элементы. Таким образом, тип которого контейнер элемента ссылочный класс гарантирует, что никаких элементов не переживают контейнер. Однако стоит отметить, что контейнер дескрипторов делает not уничтожает его элементы.

Требования

Заголовок:<cliext/vector>

Пространство имен: cliext

См. также

Ссылки

deque (STL/CLR)

list (STL/CLR)

priority_queue (STL/CLR)

queue (STL/CLR)

stack (STL/CLR)

Другие ресурсы

Справочник по библиотеке STL/CLR