Platform::Collections::UnorderedMap クラス

キー/値ペアのコレクションである順序なしの マップを表します。

構文

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

パラメーター

K
キー/値ペア内のキーの型。

V
キー/値ペア内の値の型。

C
並べ替えキーとして 2 つの要素値を比較してマップ内の相対順序を決定できる関数オブジェクトを提供する型。 既定では、std::equal_to<K> です。

解説

使用できる型は次のとおりです。

  • integers

  • インターフェイス クラス^

  • パブリック ref クラス ^

  • value 構造体

  • パブリック列挙型クラス

UnorderedMap は、基本的に Windows ランタイム型のストレージをサポートする std::unordered_map のラッパーです。 パブリック Windows ランタイム インターフェイス間で渡される Windows::Foundation::Collections::IMap および IObservableMap 型の具体的な実装です。 パブリックの戻り値またはパラメーターで Platform::Collections::UnorderedMap 型を使用しようとすると、コンパイラ エラー C3986 が発生します。 エラーを修正するには、パラメーターや戻り値の型を Windows::Foundation::Collections::IMapに変更します。

詳細については、コレクション を参照してください。

メンバー

パブリック コンストラクター

名前 説明
UnorderedMap::UnorderedMap マップ クラスの新しいインスタンスを初期化します。

パブリック メソッド

名前 説明
UnorderedMap::Clear 現在のマップ オブジェクトから、すべてのキー/値ペアを削除します。
UnorderedMap::First マップ内の最初の要素を指定する反復子を返します。
UnorderedMap::GetView 現在のマップの読み取り専用ビューである Platform::Collections::UnorderedMapView クラスを返します。
UnorderedMap::HasKey 指定したキーが現在のマップに格納されているかどうかを判定します。
UnorderedMap::Insert 指定したキー/値ペアを現在のマップ オブジェクトに追加します。
UnorderedMap::Lookup 現在のマップ オブジェクト内の指定されたキーの位置の要素を取得します。
UnorderedMap::Remove 指定したキー/値ペアを現在のマップ オブジェクトから削除します。
UnorderedMap::Size 現在のマップ オブジェクト内の要素数を返します。

イベント

名前 説明
Map::MapChanged イベント マップが変更されたときに発生します。

継承階層

UnorderedMap

要件

ヘッダー: collection.h

名前空間: Platform::Collections

UnorderedMap::Clear メソッド

現在の UnorderedMap オブジェクトから、すべてのキー/値ペアを削除します。

構文

virtual void Clear();

UnorderedMap::First メソッド

順序なしのマップの最初の Windows::Foundation::Collections::IKeyValuePair<K,V> 要素を指定する反復子を返します。

構文

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

戻り値

マップ内の最初の要素を指定する反復子。

解説

First() によって返される反復子を保持する便利な方法は、auto 型推論キーワードで宣言された変数に戻り値を代入することです。 たとえば、auto x = myUnorderedMap->First(); のようにします。

UnorderedMap::GetView メソッド

現在の UnorderedMap の読み取り専用ビューを返します。つまり、Windows::Foundation::Collections::IMapView::IMapView インターフェイスを実装する Platform::Collections::UnorderedMapView クラス。

構文

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

戻り値

UnorderedMapView オブジェクト。

UnorderedMap::HasKey メソッド

指定したキーが現在の UnorderedMap に格納されているかどうかを判定します。

構文

bool HasKey(
   K key
);

パラメーター

key
UnorderedMap 要素の検索に使用するキー。 key の型は型名 K です。

戻り値

キーが見つかった場合は true。それ以外の場合は false

UnorderedMap::Insert メソッド

指定したキー/値ペアを現在の UnorderedMap オブジェクトに追加します。

構文

virtual bool Insert(
   K key,
   V value
);

パラメーター

key
キー/値ペアのキー部分。 key の型は型名 K です。

value
キー/値ペアの値部分。 value の型は型名 V です。

戻り値

現在のマップ内の既存要素のキーが true と一致し、その要素の値部分が value に設定されている場合は 。 現在のマップ内の既存要素が false と一致せず、key および value パラメーターがキーと値のペアになっていて、現在の UnorderedMap に追加されている場合は

UnorderedMap::Lookup メソッド

型 K の指定されたキーに関連付けられている型 V の値を取得します。

構文

V Lookup(
   K key
);

パラメーター

key
UnorderedMap の要素の検索に使用するキー。 key の型は型名 K です。

戻り値

key とペアになる値。 戻り値の型は、型名 V です。

UnorderedMap::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 ランタイム アプリ。

UnorderedMap::Remove メソッド

指定したキー/値ペアを UnorderedMap オブジェクトから削除します。

構文

virtual void Remove(
   K key);

パラメーター

key
キー/値ペアのキー部分。 key の型は型名 K です。

UnorderedMap::Size メソッド

UnorderedMap の Windows::Foundation::Collections::IKeyValuePair<K,V> 要素の数を返します。

構文

virtual property unsigned int Size;

戻り値

順序なしのマップの要素数。

UnorderedMap::UnorderedMap コンストラクター

UnorderedMap クラスの新しいインスタンスを初期化します。

構文

UnorderedMap();

explicit UnorderedMap(
    size_t n
    );

UnorderedMap(
    size_t n,
    const H& h
    );

UnorderedMap(
    size_t n,
    const H& h,
    const P& p
    );

explicit UnorderedMap(
    const std::unordered_map<K, V, H, P>& m
    );

explicit UnorderedMap(
    std::unordered_map<K, V, H, P>&& m
    );

template <typename InIt>
UnorderedMap(
    InIt first,
    InIt last
    );

template <typename InIt>
UnorderedMap(
    InIt first,
    InIt last,
    size_t n
    );

template <typename InIt>
UnorderedMap(
    InIt first,
    InIt last,
    size_t n,
    const H& h
    );

template <typename InIt>
UnorderedMap(
    InIt first,
    InIt last,
    size_t n,
    const H& h,
    const P& p
    );

UnorderedMap(
    std::initializer_list< std::pair<const K, V>> il
    );

UnorderedMap(
    std::initializer_list< std::pair<const K, V>> il,
    size_t n
    );

UnorderedMap(
    std::initializer_list< std::pair<const K, V>> il,
    size_t n,
    const H& h
    );

UnorderedMap(
    std::initializer_list< std::pair<const K, V>> il,
    size_t n,
    const H& h,
    const P& p
    );

パラメーター

InIt
現在の UnorderedMap の型名。

P
2 つのキーを比較してそれらが等しいかどうかを判定できる関数オブジェクト。 このパラメーターの既定値は std::equal_to<K> です。

H
キーのハッシュ値を生成する関数オブジェクト。 このパラメーターの既定値は、そのクラスがサポートするキーの型の hash クラス 1 です。

m
現在の UnorderedMap を初期化するために使用される std::unordered_map への参照または左辺値と右辺値

イリノイ
マップを初期化するために使用される std::pair オブジェクトの std::initializer_list

first
現在の UnorderedMap を初期化するために使用される要素の範囲内の最初の要素の入力反復子。

last
現在の UnorderedMap を初期化するために使用される要素の範囲の後の最初の要素の入力反復子。

関連項目

プラットフォーム名前空間
Platform::Collections 名前空間
Platform::Collections::Map クラス
Platform::Collections::UnorderedMapView クラス
コレクション
C++ での Windows ランタイム コンポーネントの作成