Partager via


IMap<K,V> Interface

Définition

Représente une collection associative, également appelée carte ou dictionnaire.

.NET Cette interface apparaît dans le code .NET sous la forme System.Collections.Generic.IDictionary<TKey,TValue> en raison de la projection du langage .NET. Dans tous les cas où un type Windows Runtime a implémenté IMap<K,V>, le code .NET peut utiliser les API de IDictionary<TKey,TValue> à la place.

public interface class IMap : IIterable<IKeyValuePair<K, V> ^>
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.FoundationContract, 65536)]
/// [Windows.Foundation.Metadata.Guid(1009329662, 34073, 17857, 170, 121, 25, 123, 103, 24, 193, 193)]
template <typename K, typename V>
struct IMap : IIterable<IKeyValuePair<K, V>>
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.FoundationContract), 65536)]
[Windows.Foundation.Metadata.Guid(1009329662, 34073, 17857, 170, 121, 25, 123, 103, 24, 193, 193)]
public interface IDictionary<K,V> : IEnumerable<KeyValuePair<K,V>>
Public Interface IDictionary(Of K, V)
Implements IEnumerable(Of KeyValuePair(Of K, V))

Paramètres de type

K
V
Attributs
Implémente

Configuration requise pour Windows

Famille d’appareils
Windows 10 (introduit dans 10.0.10240.0)
API contract
Windows.Foundation.FoundationContract (introduit dans v1.0)

Remarques

Lors de la programmation avec .NET, cette interface est masquée et les développeurs doivent utiliser l’interface System.Collections.Generic.IDictionary<TKey,TValue> s’ils veulent implémenter un type map/dictionary. Dans tous les cas où un type Windows Runtime a implémenté IMap<K,V>, le code .NET peut utiliser les API de IDictionary<TKey,TValue> à la place. Cela inclut toutes les API Windows Runtime existantes, ainsi que des scénarios tels que l’utilisation des API de Windows Runtime composants implémentés à l’origine dans les extensions de composants Visual C++ (C++/CX) à partir d’une application C# ou Visual Basic.

L’interface IMap<K,V> représente une collection de paires clé-valeur où une valeur est accessible par sa clé associée. Les propriétés et méthodes d’IMap<K,V> prennent en charge les fonctionnalités de type dictionnaire, telles que l’obtention de la taille de la collection et l’ajout et la suppression d’éléments à des emplacements spécifiés dans la collection. En outre, la méthode GetView fournit une instantané de la carte dont l’état observable ne change pas. Le instantané est utile lorsque vous avez besoin d’une vue de la collection à laquelle faire référence dans les opérations suivantes qui impliquent IMap<K,V>.

Fonctions d’extension C++/WinRT

Notes

Des fonctions d’extension existent sur les types de projection C++/WinRT pour certaines API Windows Runtime. Par exemple, winrt ::Windows ::Foundation ::IAsyncAction est le type de projection C++/WinRT pour IAsyncAction. Les fonctions d’extension ne font pas partie de la surface d’interface binaire d’application (ABI) des types Windows Runtime réels. Elles ne sont donc pas répertoriées en tant que membres des API Windows Runtime. Mais vous pouvez les appeler à partir de n’importe quel projet C++/WinRT. Consultez Fonctions C++/WinRT qui étendent Windows Runtime API.

auto begin() const;

Retourne un itérateur à la première paire clé-valeur de la collection, à utiliser dans des algorithmes C++, tels que des boucles basées sur for une plage.

auto end() const;

Retourne un itérateur à un passé de la dernière paire clé-valeur de la collection, à utiliser dans des algorithmes C++, tels que des boucles basées sur for une plage.

auto TryLookup(param_type<K> const& key) const;

Tente de rechercher un élément dans la carte avec la clé. Pour les types de référence, retourne la valeur si elle est trouvée ou nullptr si elle n’est pas trouvée. Pour les types valeur, retourne une valeur std ::optional<V>, qui contient la valeur si elle est trouvée, ou qui n’a aucune valeur si elle n’est pas trouvée.

bool TryRemove(param_type<K> const& key) const;

Supprime l’élément dans la carte avec la clé, le cas échéant. Retourne true si l’élément a été trouvé et supprimé. Retourne false si l’élément est introuvable.

Héritage de l'interface

IMap<K,V> hérite d’IIterable, à l’aide d’une contrainte IKeyValuePair qui utilise les mêmes types de clé et de valeur. Les types qui implémentent IMap<K,V> implémentent également les membres d’interface d’IIterable, avec la contrainte de type IKeyValuePair partageant la même clé et la même valeur. De même, si vous utilisez .NET, il existe une prise en charge de IEnumerabe<T>, avec son type de contrainte en tant que KeyValuePair qui utilise les mêmes types de clé et de valeur que l’implémentation IDictionary<TKey,TValue> .

Propriétés

Size

Obtient le nombre d’éléments dans la carte.

Méthodes

Clear()

Supprime tous les éléments de la carte.

GetView()

Retourne une vue immuable de la carte.

HasKey(K)

Détermine si la carte contient la clé spécifiée.

Insert(K, V)

Insère ou remplace un élément dans la carte.

Lookup(K)

Retourne l’élément à la clé spécifiée dans la carte.

Remove(K)

Supprime un élément de la carte.

S’applique à

Voir aussi