IVector<T> Interfaz
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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.
|
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. |