IVector<T> Interfaz

Definición

Representa una colección de elementos de acceso aleatorio.

.RED Esta interfaz parece código de .NET como System.Collections.Generic.IList<T> debido a la proyección del lenguaje .NET. En cualquier caso en el que un tipo de Windows Runtime haya implementado IVector<T>, el código .NET puede usar las API de IList<T> en su lugar.

public interface class IVector : IIterable<T>
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.FoundationContract, 65536)]
/// [Windows.Foundation.Metadata.Guid(2436052969, 4513, 17221, 163, 162, 78, 127, 149, 110, 34, 45)]
template <typename T>
struct IVector : IIterable<T>
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.FoundationContract), 65536)]
[Windows.Foundation.Metadata.Guid(2436052969, 4513, 17221, 163, 162, 78, 127, 149, 110, 34, 45)]
public interface IList<T> : IEnumerable<T>
Public Interface IList(Of T)
Implements IEnumerable(Of T)

Parámetros de tipo

T
Atributos
Implementaciones

Requisitos de Windows

Familia de dispositivos
Windows 10 (se introdujo en la versión 10.0.10240.0)
API contract
Windows.Foundation.FoundationContract (se introdujo en la versión v1.0)

Comentarios

Al programar con .NET, esta interfaz está oculta y los desarrolladores deben usar la interfaz System.Collections.Generic.IList<T> si quieren implementar un tipo de vector o lista. En cualquier caso en el que un tipo de Windows Runtime haya implementado IVector<T>, el código .NET puede usar las API de IList<T> en su lugar. Esto incluye todas las API de Windows Runtime existentes y también escenarios como el uso de las API de Windows Runtime componentes implementados originalmente en extensiones de componentes de Visual C++ (C++/CX) desde una aplicación de C# o Visual Basic.

La interfaz IVector<T> representa una colección de objetos de un tipo especificado al que se puede acceder individualmente por índice. Las propiedades y métodos de IVector<T> admiten la funcionalidad de tipo de lista, como obtener el tamaño de la colección y agregar y quitar elementos en ubicaciones especificadas de la colección. Además, el método GetView proporciona una instantánea del vector cuyo estado observable no cambia. La instantánea es útil cuando se necesita una vista de la colección para hacer referencia a en las operaciones posteriores que implican IVector<T>.

Funciones de extensión de C++/WinRT

Nota:

Existen funciones de extensión en los tipos de proyección de C++/WinRT para determinadas API de Windows Runtime. Por ejemplo, winrt::Windows::Foundation::IAsyncAction es el tipo de proyección de C++/WinRT para IAsyncAction. Las funciones de extensión no forman parte de la superficie de la interfaz binaria de la aplicación (ABI) de los tipos de Windows Runtime reales, por lo que no se muestran como miembros de las API de Windows Runtime. Pero puedes llamarlos desde cualquier proyecto de C++/WinRT. Consulta Funciones de C++/WinRT que amplían las API de Windows Runtime.

auto begin() const;

Devuelve un iterador al primer elemento de la colección, para su uso en algoritmos de C++, como bucles basados en for intervalos.

auto end() const;

Devuelve un iterador a un pasado el último elemento de la colección, para su uso en algoritmos de C++, como bucles basados en for intervalos.

Herencia de interfaz

IVector hereda IIterable. Los tipos que implementan IVector también implementan los miembros de interfaz de IIterable. De forma similar, si usa .NET, hay compatibilidad con IEnumerable<T>.

Propiedades

Size

Obtiene el número de elementos del vector.

Métodos

Append(T)

Anexa un elemento al final del vector.

Clear()

Quita todos los elementos del vector.

GetAt(UInt32)

Devuelve el elemento en el índice especificado del vector.

GetMany(UInt32, T[])

Recupera varios elementos del vector que comienzan en el índice especificado.

C++/WinRT La sintaxis correcta para la proyección del lenguaje C++/WinRT es uint32_t GetMany(uint32_t startIndex, winrt::array_view<T> items);.

GetView()

Devuelve una vista inmutable del vector.

IndexOf(T, UInt32)

Recupera el índice de un elemento especificado en el vector.

InsertAt(UInt32, T)

Inserta un elemento en un índice especificado en el vector.

RemoveAt(UInt32)

Quita el elemento en el índice especificado del vector.

RemoveAtEnd()

Quita el último elemento del vector.

ReplaceAll(T[])

Reemplaza todos los elementos del vector por los elementos especificados.

SetAt(UInt32, T)

Establece el valor en el índice especificado del vector.

Se aplica a

Consulte también