Platform::Collections::Map クラス
キー/値ペアのコレクションである マップを表します。 XAML データ バインディングを支援するために Windows::Foundation::Collections::IObservableMap を実装します。
構文
template <
typename K,
typename V,
typename C = std::less<K>>
ref class Map sealed;
パラメーター
K
キー/値ペア内のキーの型。
V
キー/値ペア内の値の型。
C
並べ替えキーとして 2 つの要素値を比較してマップ内の相対順序を決定できる関数オブジェクトを提供する型。 既定では、std::less<K> です。
__is_valid_winrt_type() K および V の型を検証し、型がマップ内に格納できない場合は簡易エラー メッセージを示す、コンパイラにより生成される関数。
解説
使用できる型は次のとおりです。
integers
インターフェイス クラス^
パブリック ref クラス ^
value struct
パブリック列挙型クラス
マップは、基本的に std::mapのラッパーです。 パブリック Windows ランタイム インターフェイスを通じて渡される Windows::Foundation::Collections::IMap<Windows::Foundation::Collections::IKeyValuePair<K,V>> 型と IObservableMap 型の C++ 具象実装です。 パブリックの戻り値またはパラメーターで Platform::Collections::Map
型を使用しようとすると、コンパイラ エラー C3986 が発生します。 エラーを修正するには、パラメーターや戻り値の型を Windows::Foundation::Collections::IMap<K,V> に変更します。
詳細については、コレクション を参照してください。
メンバー
パブリック コンストラクター
名前 | 説明 |
---|---|
Map::Map | マップ クラスの新しいインスタンスを初期化します。 |
パブリック メソッド
名前 | 説明 |
---|---|
Map::Clear | 現在のマップ オブジェクトから、すべてのキー/値ペアを削除します。 |
Map::First | マップ内の最初の要素を指定する反復子を返します。 |
Map::GetView | 現在のマップの読み取り専用ビュー ( Platform::Collections::MapView Class) を返します。 |
Map::HasKey | 指定したキーが現在のマップに格納されているかどうかを判定します。 |
Map::Insert | 指定したキー/値ペアを現在のマップ オブジェクトに追加します。 |
Map::Lookup | 現在のマップ オブジェクト内の指定されたキーの位置の要素を取得します。 |
Map::Remove | 指定したキー/値ペアを現在のマップ オブジェクトから削除します。 |
Map::Size | 現在のマップ オブジェクト内の要素数を返します。 |
イベント
Name | 説明 |
---|---|
Map::MapChanged イベント | マップが変更されたときに発生します。 |
継承階層
Map
要件
ヘッダー: collection.h
名前空間: Platform::Collections
Map::Clear メソッド
現在のマップ オブジェクトから、すべてのキー/値ペアを削除します。
構文
virtual void Clear();
Map::First メソッド
マップ内の最初の要素を指定する反復子、またはマップが空の場合は nullptr
を返します。
構文
virtual Windows::Foundation::Collections::IIterator<
Windows::Foundation::Collections::IKeyValuePair<K, V>^>^ First();
戻り値
マップ内の最初の要素を指定する反復子。
解説
First() によって返される反復子を保持する便利な方法は、auto
型推論キーワードで宣言された変数に戻り値を代入することです。 たとえば、auto x = myMap->First();
のようにします。
Map::GetView メソッド
現在のマップの読み取り専用ビュー、つまり、Windows::Foundation::Collections::IMapView<K,V> インターフェイスを実装する Platform::Collections::MapView クラスを返します。
構文
Windows::Foundation::Collections::IMapView<K, V>^ GetView();
戻り値
MapView
オブジェクト。
Map::HasKey メソッド
指定したキーが現在のマップに格納されているかどうかを判定します。
構文
bool HasKey(K key);
パラメーター
key
Map 要素の検索に使用するキー。 key の型は型名 K です。
戻り値
キーが見つかった場合は true
。それ以外の場合は false
。
Map::Insert メソッド
指定したキー/値ペアを現在のマップ オブジェクトに追加します。
構文
virtual bool Insert(K key, V value);
パラメーター
key
キー/値ペアのキー部分。 key の型は型名 K です。
value
キー/値ペアの値部分。 value の型は型名 V です。
戻り値
現在のマップ内の既存要素のキーが key と一致し、その要素の値部分が value に設定されている場合は true
。 現在のマップ内の既存要素が key と一致せず、key および value パラメーターがキーと値のペアになっていて、現在のマップに追加されている場合は false
。
Map::Lookup メソッド
キーがある場合は、型 K の指定されたキーに関連付けられている型 V の値を取得します。
構文
V Lookup(K key);
パラメーター
key
マップの要素の検索に使用するキー。 key の型は型名 K です。
戻り値
key とペアになる値。 戻り値の型は、型名 V です。
解説
キーが存在しない場合、Platform::OutOfBoundsException がスローされます。
Map::Map コンストラクター
マップ クラスの新しいインスタンスを初期化します。
構文
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());
パラメーター
InIt
現在のマップの型名。
comp
並べ替えキーとして 2 つの要素値を比較してマップ内の相対順序を決定できる関数オブジェクトを提供する型。
m
現在のマップを初期化するために使用される map Class
への参照、または rvalue。
first
現在のマップを初期化するために使用される要素の範囲内の最初の要素の入力反復子。
last
現在のマップを初期化するために使用される要素の範囲の後の最初の要素の入力反復子。
Map::MapChanged イベント
項目がマップに挿入されたときまたはマップから削除されたときに発生します。
構文
event Windows::Foundation::Collections::MapChangedEventHandler<K,V>^ MapChanged;
プロパティ値/戻り値
イベントを発生させたオブジェクトと、発生した変更の種類に関する情報を含む MapChangedEventHandler<K,V>。 「IMapChangedEventArgs<K>」および「CollectionChange 列挙型」も参照してください。
同等の .NET Framework 関数
C# または Visual Basic プロジェクト IMap<K,V> を IDictionary<K,V> として使用する Windows ランタイム アプリ。
Map::Remove メソッド
指定したキー/値ペアを現在のマップ オブジェクトから削除します。
構文
virtual void Remove(K key);
パラメーター
key
キー/値ペアのキー部分。 key の型は型名 K です。
Map::Size メソッド
マップの Windows::Foundation::Collections::IKeyValuePair<K,V> 要素の数を返します。
構文
virtual property unsigned int Size;
戻り値
マップの要素数。
関連項目
コレクション (C++/CX)
プラットフォーム名前空間
C++ での Windows ランタイム コンポーネントの作成