IMapView<K,V> Interfaccia
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta una vista non modificabile in una mappa.
.NET Questa interfaccia viene visualizzata come System.Collections.Generic.IReadOnlyDictionary<TKey,TValue> a causa della proiezione del linguaggio .NET. In tutti i casi in cui un Windows Runtime tipo ha implementato IMapView<K,V>, codice .NET può usare invece le API di IReadOnlyDictionary<TKey,TValue>.
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))
Parametri di tipo
- K
- V
- Attributi
- Implementazioni
-
IIterable<IKeyValuePair<K,V>> IEnumerable<KeyValuePair<K,V>>
Requisiti Windows
Famiglia di dispositivi |
Windows 10 (è stato introdotto in 10.0.10240.0)
|
API contract |
Windows.Foundation.FoundationContract (è stato introdotto in v1.0)
|
Commenti
Quando si esegue la programmazione con .NET, questa interfaccia è nascosta e gli sviluppatori devono usare l'interfaccia System.Collections.Generic.IReadOnlyDictionary<TKey,TValue> se vogliono implementare un tipo mappa/dizionario di sola lettura. In tutti i casi in cui un Windows Runtime tipo ha implementato IMapView<K,V>, codice .NET può usare invece le API di IReadOnlyDictionary<TKey,TValue>. Include tutte le API di Windows Runtime esistenti e anche scenari come l'uso delle API di Windows Runtime componenti originariamente implementati in C++ da un'app C# o Visual Basic.
L'interfaccia IMapView<K,V> rappresenta una raccolta di coppie chiave-valore in cui è possibile accedere a un valore tramite la chiave associata. Proprietà e metodi di IMapView<K,V> supportano funzionalità di tipo dizionario, ad esempio ottenere le dimensioni della raccolta o ricerche, ma non supportano l'aggiunta o la rimozione di elementi perché la mappa è di sola lettura.
Funzioni di estensione C++/WinRT
Nota
Le funzioni di estensione esistono nei tipi di proiezione C++/WinRT per determinate API Windows Runtime. Ad esempio, winrt::Windows::Foundation::IAsyncAction è il tipo di proiezione C++/WinRT per IAsyncAction. Le funzioni di estensione non fanno parte della superficie dell'interfaccia binaria dell'applicazione (ABI) dei tipi di Windows Runtime effettivi, pertanto non sono elencati come membri delle API Windows Runtime. È tuttavia possibile chiamarli da qualsiasi progetto C++/WinRT. Vedere funzioni C++/WinRT che estendono Windows Runtime API.
auto begin() const;
Restituisce un iteratore alla prima coppia chiave-valore della raccolta, per l'uso in algoritmi C++ come cicli basati su for
intervalli.
auto end() const;
Restituisce un iteratore a un'ultima coppia chiave-valore della raccolta, per l'uso in algoritmi C++ come cicli basati su for
intervallo.
auto TryLookup(param_type<K> const& key) const;
Prova a cercare un elemento nella mappa con la chiave. Per i tipi di riferimento, restituisce il valore se trovato o nullptr
se non trovato. Per i tipi di valore, restituisce un valore std::facoltativo<V>, che contiene il valore se trovato o non ha alcun valore se non trovato.
Ereditarietà dell'interfaccia
IMapView eredita IIterable usando un vincolo IKeyValuePair . I tipi che implementano IMapView implementano anche i membri dell'interfaccia di IKeyValuePair, con un vincolo di tipo IKeyValuePair . Analogamente, se si usa .NET, è disponibile il supporto per IEnumerable; T>, con il relativo tipo di vincolo come KeyValuePair che usa gli stessi tipi di chiave e valore, come fa l'implementazione di IReadOnlyDictionary<TKey,TValue> .
Proprietà
Size |
Ottiene il numero di elementi nella mappa. |
Metodi
HasKey(K) |
Determina se la visualizzazione mappa contiene la chiave specificata. |
Lookup(K) |
Restituisce l'elemento nella chiave specificata nella visualizzazione mappa. |
Split(IMapView<K,V>, IMapView<K,V>) |
Suddivide la visualizzazione mappa in due visualizzazioni. |