Compartir a través de


Platform::Collections::Map (Clase)

Representa una asignación, que es una colección de pares clave-valor. Implementa Windows::Foundation::Collections::IObservableMap para ayudar con el enlace de datos de XAML.

Sintaxis

template <
   typename K,
   typename V,
   typename C = std::less<K>>
ref class Map sealed;

Parámetros

K
Tipo de la clave del par clave-valor.

V
Tipo del valor del par clave-valor.

C
Tipo que proporciona un objeto de función que puede comparar dos valores de elemento como claves de ordenación para determinar su orden relativo en el objeto Map. De forma predeterminada, std::less<K>.

__is_valid_winrt_type() Una función generada por el compilador que valida el tipo de K y V y proporciona un mensaje de error descriptivo si el tipo no puede almacenarse en el objeto Map.

Comentarios

Los tipos permitidos son:

  • integers

  • clase interface^

  • clase ref pública^

  • value struct

  • clase de enumeración pública

El objeto Map es básicamente un contenedor de std::map. Es una implementación concreta en C++ de los tipos Windows::Foundation::Collections::IMap<Windows::Foundation::Collections::IKeyValuePair<K,V>> e IObservableMap que se pasan a las interfaces de Windows Runtime públicas. Si intentas usar un tipo Platform::Collections::Map en un valor devuelto o un parámetro público, se produce el error del compilador C3986. Puede corregir el error si cambia el tipo del parámetro o el valor devuelto a Windows::Foundation::Collections::IMap<K,V>.

Para obtener más información, consulte Colecciones.

Miembros

Constructores públicos

Nombre Descripción
Map::Map Inicializa una nueva instancia de la clase Map.

Métodos públicos

Nombre Descripción
Map::Clear Quita todos los pares clave-valor del objeto Map actual.
Map::First Devuelve un iterador que especifica el primer elemento del objeto Map.
Map::GetView Devuelve una vista de solo lectura del objeto Map actual; es decir, Platform::Collections::MapView Class.
Map::HasKey Determina si el objeto Map actual contiene la clave especificada.
Map::Insert Agrega el par clave-valor especificado al objeto Map actual.
Map::Lookup Recupera el elemento en la clave especificada del objeto Map actual.
Map::Remove Elimina el par clave-valor especificado del objeto Map actual.
Map::Size Devuelve el número de elementos del objeto Map actual.

Eventos

Nombre Descripción
Map::MapChanged (evento) Se produce cuando cambia la asignación.

Jerarquía de herencia

Map

Requisitos

Encabezado: collection.h

Espacio de nombres: Platform::Collections

Map::Clear (Método)

Quita todos los pares clave-valor del objeto Map actual.

Sintaxis

virtual void Clear();

Map::First (Método)

Devuelve un iterador que especifica el primer elemento del mapa o nullptr si el mapa está vacío.

Sintaxis

virtual Windows::Foundation::Collections::IIterator<
Windows::Foundation::Collections::IKeyValuePair<K, V>^>^ First();

Valor devuelto

Un iterador que especifica el primer elemento del mapa.

Comentarios

Una manera cómoda de contener el iterador devuelto por First() es asignar el valor devuelto a una variable que se declara con la palabra clave de deducción de tipos auto. Por ejemplo, auto x = myMap->First();.

Map::GetView (Método)

Devuelve una vista de solo lectura del objeto Map actual; es decir, una clase Platform::Collections::MapView, que implementa la interfaz Windows::Foundation::Collections::IMapView<K,V>.

Sintaxis

Windows::Foundation::Collections::IMapView<K, V>^ GetView();

Valor devuelto

Un objeto MapView.

Map::HasKey (Método)

Determina si el objeto Map actual contiene la clave especificada.

Sintaxis

bool HasKey(K key);

Parámetros

key
La clave que se usa para ubicar el elemento Map. El tipo de key es typename K.

Valor devuelto

true si se encuentra la clave; de lo contrario, false.

Map::Insert (Método)

Agrega el par clave-valor especificado al objeto Map actual.

Sintaxis

virtual bool Insert(K key, V value);

Parámetros

key
La parte de clave del par clave-valor. El tipo de key es typename K.

value
La parte de valor del par clave-valor. El tipo de value es typename V.

Valor devuelto

true si la clave de un elemento del Map actual coincide con key y la parte de valor de ese elemento se establece en value. false si ningún elemento existente del Map actual coincide con key y los parámetros key y value se crean en un par clave-valor y se agregan después al objeto Map actual.

Map::Lookup (Método)

Recupera el valor de tipo V asociado a la clave especificada de tipo K, si la clave existe.

Sintaxis

V Lookup(K key);

Parámetros

key
La clave utilizada para buscar un elemento en el objeto Map. El tipo de key es typename K.

Valor devuelto

Valor que está emparejado conkey. El tipo del valor devuelto es typename V.

Comentarios

Si no existe la clave, se produce una excepción Platform::OutOfBoundsException.

Map::Map (Constructor)

Inicializa una nueva instancia de la clase Map.

Sintaxis

explicit Map(const C& comp = C());
explicit Map(const StdMap& m);
explicit Map(StdMap&& m ;
template <typename InIt>
Map(
   InItfirst,
   InItlast,
   const C& comp = C());

Parámetros

InIt
typename del objeto Map actual.

comp
Tipo que proporciona un objeto de función que puede comparar dos valores de elemento como claves de ordenación para determinar su orden relativo en el objeto Map.

m
Una referencia o rvalue a un objeto map Class que se usa para inicializar el objeto Map actual.

first
El iterador de entrada del primer elemento en un intervalo de elementos utilizados para inicializar el objeto Map actual.

last
El iterador de entrada del primer elemento tras un intervalo de elementos utilizados para inicializar el objeto Map actual.

Map::MapChanged (Evento)

Se produce cuando un elemento se inserta en el mapa o se quita del mapa.

Sintaxis

event Windows::Foundation::Collections::MapChangedEventHandler<K,V>^ MapChanged;

Valor de propiedad y valor devuelto

MapChangedEventHandler<K,V> que contiene información sobre el objeto que desencadenó el evento y el tipo de cambio que se produjo. Consulte también IMapChangedEventArgs<K> y CollectionChange (enumeración).

Equivalente de .NET Framework

Las aplicaciones de Windows Runtime que utilizan C# o Visual Basic proyectan IMap<K,V> como IDictionary<K,V>.

Map::Remove (Método)

Elimina el par clave-valor especificado del objeto Map actual.

Sintaxis

virtual void Remove(K key);

Parámetros

key
La parte de clave del par clave-valor. El tipo de key es typename K.

Map::Size (Método)

Devuelve el número de elementos Windows::Foundation::Collections::IKeyValuePair<K,V> del objeto Map.

Sintaxis

virtual property unsigned int Size;

Valor devuelto

El número de elementos del objeto Map.

Consulte también

Colecciones (C++/CX)
Espacio de nombres de plataforma
Crear componentes de Windows Runtime en C++