IMapView<K,V> 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 vista inmutable en un mapa.
.RED Esta interfaz aparece como System.Collections.Generic.IReadOnlyDictionary<TKey,TValue> debido a la proyección del lenguaje .NET. En cualquier caso en el que un tipo de Windows Runtime haya implementado IMapView<K,V>, el código .NET puede usar las API de IReadOnlyDictionary<TKey,TValue> en su lugar.
public interface class IMapView : IIterable<IKeyValuePair<K, V> ^>
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.FoundationContract, 65536)]
/// [Windows.Foundation.Metadata.Guid(3833646656, 41784, 19162, 173, 207, 39, 34, 114, 228, 140, 185)]
template <typename K, typename V>
struct IMapView : IIterable<IKeyValuePair<K, V>>
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.FoundationContract), 65536)]
[Windows.Foundation.Metadata.Guid(3833646656, 41784, 19162, 173, 207, 39, 34, 114, 228, 140, 185)]
public interface IReadOnlyDictionary<K,V> : IEnumerable<KeyValuePair<K,V>>
Public Interface IReadOnlyDictionary(Of K, V)
Implements IEnumerable(Of KeyValuePair(Of K, V))
Parámetros de tipo
- K
- V
- Atributos
- Implementaciones
-
IIterable<IKeyValuePair<K,V>> IEnumerable<KeyValuePair<K,V>>
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 TKey System.Collections.Generic.IReadOnlyDictionary,TValue<> si quieren implementar un tipo de mapa o diccionario de solo lectura. En cualquier caso en el que un tipo de Windows Runtime haya implementado IMapView<K,V>, el código .NET puede usar las API de IReadOnlyDictionary<TKey,TValue> 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 C++ desde una aplicación de C# o Visual Basic.
La interfaz IMapView<K,V> representa una colección de pares clave-valor a los que se puede tener acceso a un valor mediante su clave asociada. Las propiedades y los métodos de IMapView<K,V> admiten la funcionalidad de tipo de diccionario, como obtener el tamaño de la colección o las búsquedas, pero no admiten agregar o quitar elementos porque el mapa es de solo lectura.
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 enumeran como miembros de las API de Windows Runtime. Pero puede llamarlos desde cualquier proyecto de C++/WinRT. Consulte Funciones de C++/WinRT que amplían las API de Windows Runtime.
auto begin() const;
Devuelve un iterador al primer par clave-valor 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 par clave-valor de la colección, para su uso en algoritmos de C++, como bucles basados en for
intervalos.
auto TryLookup(param_type<K> const& key) const;
Intenta buscar un elemento en el mapa con la clave de clave. Para los tipos de referencia, devuelve el valor si se encuentra o nullptr
si no se encuentra. Para los tipos de valor, devuelve un std::optional<V>, que contiene el valor si se encuentra o no tiene ningún valor si no se encuentra.
Herencia de interfaz
IMapView hereda IIterable mediante una restricción IKeyValuePair . Los tipos que implementan IMapView también implementan los miembros de interfaz de IKeyValuePair, con una restricción de tipo IKeyValuePair . Del mismo modo, si usa .NET, hay compatibilidad con IEnumerable; T>, con su tipo de restricción como keyValuePair que usa los mismos tipos de clave y valor que la implementación de TKey,TValue> de IReadOnlyDictionary<.
Propiedades
Size |
Obtiene el número de elementos del mapa. |
Métodos
HasKey(K) |
Determina si la vista de mapa contiene la clave especificada. |
Lookup(K) |
Devuelve el elemento en la clave especificada de la vista de mapa. |
Split(IMapView<K,V>, IMapView<K,V>) |
Divide la vista de mapa en dos vistas. |