Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Представляет упорядоченную коллекцию объектов с индивидуальным доступом, осуществляемым при помощи индекса. Реализует Windows::Foundation::Collections::IObservableVector, чтобы помочь с привязкой данных XAML.
Синтаксис
template <typename T, typename E>
ref class Vector sealed;
Параметры
T
Тип элементов, содержащихся в объекте Vector.
E
Задает двоичный предикат для тестирования равенства со значениями типа T. Значение по умолчанию — std::equal_to<T>.
Замечания
Допустимые типы:
integers
класс интерфейса^
открытый ссылочный класс ^
структуру значений
открытый класс перечисления
Класс Vector — это конкретная реализация интерфейса Windows::Foundation::Collections::IVector .
Если вы пытаетесь использовать тип Vector в общедоступном возвращаемом значении или параметре, возникает ошибка компилятора C3986. Вы можете исправить ошибку, изменив тип параметра или возвращаемого значения на Windows::Foundation::Collections::IVector. Дополнительные сведения см. в разделе Collections (C++/CX).
Участники
Открытые конструкторы
| Имя | Описание |
|---|---|
| Vector::Vector | Инициализирует новый экземпляр класса Vector. |
Открытые методы
| Имя | Описание |
|---|---|
| Vector::Append | Вставляет указанный элемент после последнего элемента текущего объекта Vector. |
| Vector::Clear | Удаляет все элементы текущего объекта Vector. |
| Vector::First | Возвращает итератор, указывающий первый элемент объекта Vector. |
| Vector::GetAt | Извлекает элемент текущего объекта Vector, указанный заданным индексом. |
| Vector::GetMany | Извлекает последовательность элементов из текущего объекта Vector, начиная с указанного индекса. |
| Vector::GetView | Возвращает доступное только для чтения представление объекта Vector, то есть Platform::Collections::VectorView. |
| Vector::IndexOf | Выполняет поиск указанного элемента в текущем объекте Vector и возвращает его индекс, если он найден. |
| Vector::InsertAt | Вставляет указанный элемент в текущий вектор в элементе, определяемом указанным индексом. |
| Vector::ReplaceAll | Удаляет элементы из текущего объекта Vector, а затем вставляет элементы из указанного массива. |
| Vector::RemoveAt | Удаляет элемент, определенный заданным индексом из текущего объекта Vector. |
| Vector::RemoveAtEnd | Удаляет элемент в конце текущего объекта Vector. |
| Vector::SetAt | Присваивает указанное значение к элементу текущего объекта Vector, определяемому заданным индексом. |
| Vector::Size | Возвращает количество элементов в текущем объекте Vector. |
События
| Имя | Описание |
|---|---|
| event Windows::Foundation::Collection::VectorChangedEventHandler<T>^ VectorChanged | Происходит при изменении объекта Vector. |
Иерархия наследования
Vector
Требования
Заголовок: collection.h
Пространство имен: Platform::Collections
Метод Vector::Append
Вставляет указанный элемент после последнего элемента текущего объекта Vector.
Синтаксис
virtual void Append(T item);
Параметры
index
Элемент, который требуется вставить в объект Vector. Тип элемента определяется именем типа T .
Метод Vector::Clear
Удаляет все элементы текущего объекта Vector.
Синтаксис
virtual void Clear();
Метод Vector::First
Возвращает итератор, указывающий первый элемент объекта Vector.
Синтаксис
virtual Windows::Foundation::Collections::IIterator <T>^ First();
Возвращаемое значение
Итератор, указывающий первый элемент объекта Vector.
Замечания
Удобный способ хранения итератора, возвращаемого First(), — назначить возвращаемое значение переменной, объявленной с ключевым словом вычета auto типов. Например, auto x = myVector->First();. Этому итератору известна длина коллекции.
Если требуется пара итераторов для передачи функции STL, используйте бесплатные функции Windows::Foundation::Collections::begin и Windows::Foundation::Foundation::Collections:end
Метод Vector::GetAt
Извлекает элемент текущего объекта Vector, указанный заданным индексом.
Синтаксис
virtual T GetAt(unsigned int index);
Параметры
index
Целое значение без знака, отсчитываемое от нуля, которое указывает определенный элемент в объекте Vector.
Возвращаемое значение
Элемент, указанный параметром индекса . Тип элемента определяется именем типа T .
Метод Vector::GetMany
Извлекает последовательность элементов из текущего объекта Vector, начиная с определенного индекса, и копирует их в выделенный вызывающим объектом массив.
Синтаксис
virtual unsigned int GetMany(
unsigned int startIndex,
Platform::WriteOnlyArray<T>^ dest);
Параметры
startIndex
Отсчитываемый от нуля индекс начала элементов для извлечения.
dest
Выделенный вызывающим массив элементов, начинающийся с элемента, заданного startIndex и заканчивающийся последним элементом в Vector.
Возвращаемое значение
Количество извлеченных элементов.
Замечания
Эта функция не предназначена для прямого использования в клиентском коде. Он используется внутри функции to_vector для обеспечения эффективного преобразования экземпляров Platform::Vector в экземпляры std::vector.
Метод Vector::GetView
Возвращает доступное только для чтения представление объекта Vector, то есть интерфейс IVectorView.
Синтаксис
Windows::Foundation::Collections::IVectorView<T>^ GetView();
Возвращаемое значение
Объект IVectorView.
Метод Vector::IndexOf
Выполняет поиск указанного элемента в текущем объекте Vector и возвращает его индекс, если он найден.
Синтаксис
virtual bool IndexOf(T value, unsigned int* index);
Параметры
значение
Элемент, который нужно найти.
index
Отсчитываемый от нуля индекс элемента, если найдено значение параметра; в противном случае — значение 0.
Параметр индекса равен 0, если элемент является первым элементом Vector или элементом не найден. Если возвращаемое значение равно true, элемент найден и является первым элементом; в противном случае элемент не найден.
Возвращаемое значение
true Значение falseв противном случае .
Замечания
IndexOf использует std::find_if для поиска элемента. Таким образом, типы настраиваемых элементов должны перегрузить оператор == и != для включения сравнений на равенство, которое требуется для find_if.
Метод Vector::InsertAt
Вставляет указанный элемент в текущий вектор в элементе, определяемом указанным индексом.
Синтаксис
virtual void InsertAt(unsigned int index, T item)
Параметры
index
Целое значение без знака, отсчитываемое от нуля, которое указывает определенный элемент в объекте Vector.
item
Элемент, вставляемый в Vector по элементу, указанному индексом. Тип элемента определяется именем типа T .
Метод Vector::RemoveAt
Удаляет элемент, определенный заданным индексом из текущего объекта Vector.
Синтаксис
virtual void RemoveAt(unsigned int index);
Параметры
index
Целое значение без знака, отсчитываемое от нуля, которое указывает определенный элемент в объекте Vector.
Метод Vector::RemoveAtEnd
Удаляет элемент в конце текущего объекта Vector.
Синтаксис
virtual void RemoveAtEnd();
Метод Vector::ReplaceAll
Удаляет элементы из текущего объекта Vector, а затем вставляет элементы из указанного массива.
Синтаксис
virtual void ReplaceAll(const ::Platform::Array<T>^ arr);
Параметры
arr
Массив объектов, тип которого определяется именем типа T .
Метод Vector::SetAt
Присваивает указанное значение к элементу текущего объекта Vector, определяемому заданным индексом.
Синтаксис
virtual void SetAt(unsigned int index, T item);
Параметры
index
Целое значение без знака, отсчитываемое от нуля, которое указывает определенный элемент в объекте Vector.
item
Значение, присваиваемое указанному элементу. Тип элемента определяется именем типа T .
Метод Vector::Size
Возвращает количество элементов в текущем объекте Vector.
Синтаксис
virtual property unsigned int Size;
Возвращаемое значение
Количество элементов в текущем объекте Vector.
Конструктор Vector::Vector
Инициализирует новый экземпляр класса Vector.
Синтаксис
Vector();
explicit Vector(unsigned int size);
Vector( unsigned int size, T value);
template <typename U> explicit Vector( const ::std::vector<U>& v);
template <typename U> explicit Vector( std::vector<U>&& v);
Vector( const T * ptr, unsigned int size);
template <size_t N> explicit Vector(const T(&arr)[N]);
template <size_t N> explicit Vector(const std::array<T, N>& a);
explicit Vector(const Array<T>^ arr);
template <typename InIt> Vector(InIt first, InIt last);
Vector(std::initializer_list<T> il);
Параметры
a
Массив std::, который будет использоваться для инициализации вектора.
arr
Платформа ::Массив , который будет использоваться для инициализации вектора.
InIt
Тип коллекции объектов, используемой для инициализации текущего объекта Vector.
il
Std ::initializer_list объектов типа T , который будет использоваться для инициализации вектора.
N
Количество элементов в коллекции объектов, используемой для инициализации текущего объекта Vector.
size
Количество элементов в объекте Vector.
значение
Значение, используемое для инициализации каждого элемента в текущем объекте Vector.
v
Lvalues и Rvalues to a std::vector , который используется для инициализации текущего вектора.
ptr
Указатель на объект std::vector, используемый для инициализации текущего объекта Vector.
first
Первый элемент в последовательности объектов, используемых для инициализации текущего объекта Vector. Тип первого передается с помощью идеальной пересылки. Дополнительные сведения см. в статье Декларатор ссылки Rvalue: &&.
last
Последний элемент в последовательности объектов, используемых для инициализации текущего объекта Vector. Тип последнего передается с помощью идеальной пересылки. Дополнительные сведения см. в статье Декларатор ссылки Rvalue: &&.
См. также
Коллекции (C++/CX)
Пространство имен платформы
Создание компонентов среды выполнения Windows на C++