Класс Platform::Collections::VectorView
Представляет доступное только для чтения представление упорядоченной коллекции объектов, в которой возможен доступ к каждому отдельному объекту по его индексу. Тип каждого объекта в коллекции задается параметром шаблона.
Синтаксис
template <typename T, typename E>
ref class VectorView sealed;
Параметры
T
Тип элементов, содержащихся в объекте VectorView
.
E
Определяет бинарный предикат для проверки равенства со значениями типа T
. Значение по умолчанию — std::equal_to<T>
.
Замечания
Класс VectorView
реализует интерфейс Windows::Foundation::Collections::IVectorView<T> и поддержку итераторов стандартной библиотеки шаблонов.
Участники
Открытые конструкторы
Имя | Описание |
---|---|
VectorView::VectorView | Инициализирует новый экземпляр класса VectorView. |
Открытые методы
Имя | Описание |
---|---|
VectorView::First | Возвращает итератор, указывающий первый элемент объекта VectorView. |
VectorView::GetAt | Извлекает элемент текущего VectorView, указанный заданным индексом. |
VectorView::GetMany | Извлекает последовательность элементов из текущего объекта VectorView, начиная с указанного индекса. |
VectorView::IndexOf | Выполняет поиск указанного элемента в текущем объекте VectorView и возвращает его индекс, если он найден. |
VectorView::Size | Возвращает количество элементов в текущем объекте VectorView. |
Иерархия наследования
VectorView
Требования
Заголовок: collection.h
Пространство имен: Platform::Collections
Метод VectorView::First
Возвращает итератор, указывающий первый элемент объекта VectorView.
Синтаксис
virtual Windows::Foundation::Collections::IIterator<T>^
First();
Возвращаемое значение
Итератор, указывающий первый элемент объекта VectorView.
Замечания
Удобный способ хранения итератора, возвращаемого First(), — назначить возвращаемое значение переменной, объявленной с ключевым словом вычета auto
типов. Например, auto x = myVectorView->First();
.
Метод VectorView::GetAt
Извлекает элемент текущего VectorView, указанный заданным индексом.
Синтаксис
T GetAt(
UInt32 index
);
Параметры
index
Целое значение без знака, отсчитываемое от нуля, которое указывает определенный элемент в объекте VectorView.
Возвращаемое значение
Элемент, заданный параметром index
. Тип элемента указывается параметром шаблона VectorView, T.
Метод VectorView::GetMany
Извлекает последовательность элементов из текущего объекта VectorView, начиная с указанного индекса.
Синтаксис
virtual unsigned int GetMany(
unsigned int startIndex,
::Platform::WriteOnlyArray<T>^ dest
);
Параметры
startIndex
Отсчитываемый от нуля индекс начала элементов для извлечения.
dest
Когда эта операция завершается, массив элементов начинается с элемента, заданного startIndex
, и заканчивается последним элементом объекта VectorView.
Возвращаемое значение
Количество извлеченных элементов.
Метод VectorView::IndexOf
Выполняет поиск указанного элемента в текущем объекте VectorView и возвращает его индекс, если он найден.
Синтаксис
virtual bool IndexOf(
T value,
unsigned int* index
);
Параметры
значение
Элемент, который нужно найти.
index
Отсчитываемый от нуля индекс элемента, если параметр value
найден; в противном случае — 0.
Параметр индекса равен 0, если элемент является первым элементом VectorView
элемента или элемент не найден. Если возвращаемое значение равно true
, элемент найден и является первым элементом; в противном случае элемент не найден.
Возвращаемое значение
true
Значение false
в противном случае .
Метод VectorView::Size
Возвращает количество элементов в текущем объекте VectorView.
Синтаксис
virtual property unsigned int Size;
Возвращаемое значение
Количество элементов в текущем объекте VectorView.
Конструктор VectorView::VectorView
Инициализирует новый экземпляр класса VectorView.
Синтаксис
VectorView();
explicit VectorView(
UInt32 size
);
VectorView(
UInt32 size,
T value
);
explicit VectorView(
const ::std::vector<T>& v
);
explicit VectorView(
::std::vector<T>&& v
);
VectorView(
const T * ptr,
UInt32 size
);
template <
size_t N
>
explicit VectorView(
const T (&arr)[N]
);
template <
size_t N
>
explicit VectorView(
const ::std::array<T,
N>& a
);
explicit VectorView(
const ::Platform::Array<T>^ arr
);
template <
typename InIt
>
VectorView(
InItfirst,
InItlast
);
VectorView(
std::initializer_list<T> il
);
Параметры
InIt
Тип коллекции объектов, используемой для инициализации текущего объекта VectorView.
il
Std ::initializer_list , элементы которого будут использоваться для инициализации VectorView.
N
Количество элементов в коллекции объектов, используемой для инициализации текущего объекта VectorView.
size
Количество элементов в объекте VectorView.
значение
Значение, используемое для инициализации каждого элемента в текущем объекте VectorView.
v
Lvalues и Rvalues to a std::vector , который используется для инициализации текущего VectorView.
ptr
Указатель на объект std::vector
, используемый для инициализации текущего объекта VectorView.
arr
Объект Platform::Array, используемый для инициализации текущего VectorView.
a
Объект std::array, используемый для инициализации текущего VectorView.
first
Первый элемент в последовательности объектов, используемых для инициализации текущего объекта VectorView. Тип first
передается с помощью идеальной пересылки. Дополнительные сведения см. в статье Декларатор ссылки Rvalue: &&.
last
Последний элемент в последовательности объектов, используемых для инициализации текущего объекта VectorView. Тип last
передается с помощью идеальной пересылки. Дополнительные сведения см. в статье Декларатор ссылки Rvalue: &&.
См. также
Пространство имен платформы
Создание компонентов среды выполнения Windows на C++