set (STL/CLR)

このテンプレート クラスは、オブジェクトをコントロールと双方向アクセスできる要素の可変長シーケンスを記述します。 a として要素のシーケンスを管理するには、コンテナー set (ほとんど) バランスをとりましたノードの順序が指定された、ツリー、保存の 1 要素を使用します。

以下の説明では GValue は GKeyな型が Key^場合、後者は ref 型である Key と同じの場合と同じです。

template<typename Key>
    ref class set
        :   public
        System::ICloneable,
        System::Collections::IEnumerable,
        System::Collections::ICollection,
        System::Collections::Generic::IEnumerable<GValue>,
        System::Collections::Generic::ICollection<GValue>,
        System::Collections::Generic::IList<GValue>,
        Microsoft::VisualC::StlClr::ITree<Gkey, GValue>
    { ..... };

パラメーター

  • キー
    被制御シーケンス内の要素のキー コンポーネントの型。

メンバー

型定義

説明

set::const_iterator (STL/CLR)

被制御シーケンスの定数反復子の型です。

set::const_reference (STL/CLR)

要素への定数参照の型です。

set::const_reverse_iterator (STL/CLR)

被制御シーケンスの定数反転反復子の型です。

set::difference_type (STL/CLR)

2 個の要素間の a (場合に署名する) 間隔の種類。

set::generic_container (STL/CLR)

コンテナーのジェネリック インターフェイスの種類。

set::generic_iterator (STL/CLR)

コンテナーのジェネリック インターフェイスの反復子の型。

set::generic_reverse_iterator (STL/CLR)

コンテナーのジェネリック インターフェイスの反転反復子の型。

set::generic_value (STL/CLR)

コンテナーのジェネリック インターフェイスの要素の型。

set::iterator (STL/CLR)

被制御シーケンスの反復子の型です。

set::key_compare (STL/CLR)

2 種類のキーの順序のデリゲート。

set::key_type (STL/CLR)

順序付けキーの型です。

set::reference (STL/CLR)

要素への参照の型です。

set::reverse_iterator (STL/CLR)

被制御シーケンスの反転反復子の型です。

set::size_type (STL/CLR)

2 個の要素間の a (負) 間隔の種類。

set::value_compare (STL/CLR)

2 要素の値の順序のデリゲート。

set::value_type (STL/CLR)

要素の型。

メンバー関数

説明

set::begin (STL/CLR)

被制御シーケンスの先頭を指定します。

set::clear (STL/CLR)

すべての要素を削除します。

set::count (STL/CLR)

指定したキーに一致する要素数をカウントします。

set::empty (STL/CLR)

要素が存在しないかどうかをテストします。

set::end (STL/CLR)

被制御シーケンスの末尾を指定します。

set::equal_range (STL/CLR)

指定したキーに一致する範囲を検索します。

set::erase (STL/CLR)

指定した位置にある要素を削除します。

set::find (STL/CLR)

指定したキーに一致する要素を検索します。

set::insert (STL/CLR)

要素を追加します。

set::key_comp (STL/CLR)

2 種類のキーの順序のデリゲートをコピーします。

set::lower_bound (STL/CLR)

指定したキーに一致する範囲の先頭を検索します。

set::make_value (STL/CLR)

値オブジェクトを構築します。

set::rbegin (STL/CLR)

反転被制御シーケンスの先頭を指定します。

set::rend (STL/CLR)

反転被制御シーケンスの末尾を指定します。

set::set (STL/CLR)

コンテナー オブジェクトを構築します。

set::size (STL/CLR)

要素の数をカウントします。

set::swap (STL/CLR)

2 つのコンテナーのコンテンツを交換します。

set::to_array (STL/CLR)

新しい配列に被制御シーケンスをコピーします。

set::upper_bound (STL/CLR)

指定したキーに一致する範囲の末尾を検索します。

set::value_comp (STL/CLR)

2 要素の値の順序のデリゲートをコピーします。

演算子

説明

set::operator= (STL/CLR)

被制御シーケンスを置き換えます。

operator!= (set) (STL/CLR)

set オブジェクトが set の別のオブジェクトと等しくないかどうかを判定します。

operator< (set) (STL/CLR)

set オブジェクトが set の別のオブジェクトより小さいかどうかを判定します。

operator<= (set) (STL/CLR)

set オブジェクトが set の別のオブジェクト以下かどうかを判定します。

operator== (set) (STL/CLR)

set オブジェクトが set の別のオブジェクトと等しいかどうかを判定します。

operator> (set) (STL/CLR)

set オブジェクトが set の別のオブジェクトより大きいかどうかを判定します。

operator>= (set) (STL/CLR)

set オブジェクトが set の別のオブジェクト以上かどうかを判定します。

インターフェイス

インターフェイス

説明

ICloneable

オブジェクトを複製します。

IEnumerable

要素によるシーケンス。

ICollection

要素のグループを保持します。

IEnumerable

指定された要素を通じてシーケンス。

ICollection

指定された要素のグループを保持します。

ITreeKey<の値>

一般的なコンテナーを保持します。

解説

オブジェクトは、個々のノードとして被制御シーケンスに対するストレージの割り当て。 これは a に他方に 1 ノードの内容をコピーして、要素 (ほとんど) は、分散を実行しません。ノード間のリンクの変更に並べるさせてツリーで、挿入されません。 これはブロックの最初の要素を除いた要素を自由に挿入および削除できることを意味します。

オブジェクトの型は set::key_compare (STL/CLR)の格納されたデリゲート オブジェクトを呼び出すことによって制御されるシーケンスを並べ替えます。 設定を作成したときに保存されたデリゲート オブジェクトを指定する; デリゲート オブジェクトを指定しない場合、既定は比較 operator<(key_type, key_type)です。 メンバー関数 set::key_comp (STL/CLR)()を呼び出すことで、保存されたオブジェクトにアクセスします。

このようなデリゲート オブジェクトは型 set::key_type (STL/CLR)のキーに厳密な弱い順序付けを課さなければ必要があります。 このいずれかの 2 種類のキー X と Yのメジャー、:

key_comp()(X, Y) は 呼び出しごとに同じブール型の結果を返します。

key_comp()(X, Y) が TRUE の場合、key_comp()(Y, X) が false である必要があります。

key_comp()(X, Y) が TRUE の場合、X は Yの前に並べると呼ばれます。

!key_comp()(X, Y) && !key_comp()(Y, X) が TRUE の場合、同じ大小関係があると Y は X と呼ばれます。

被制御シーケンスの Y に先行する要素 X では、key_comp()(Y, X) は false です。(既定のデリゲート オブジェクトのキーは値でも減りません)。set (STL/CLR)テンプレート クラスとは異なり、テンプレート クラス set オブジェクトはすべての要素のキーが一意である必要はありません。(複数のキーは同じ大小関係を持つことができます。

各要素は ey と値として機能します。 このシーケンスは、(対数時間) 要素の数の対数に比例した回数のアクションで任意の要素の参照、挿入、および削除を有効にすることで表されます。 要素を挿入しても反復子の有効性は失われません。また、要素を削除した場合は、削除された要素を指す反復子だけが無効化されます。

設定は、つまり、被制御シーケンスの要素を指定する反復子を持つ隣接する要素にステップ インできる双方向の反復子がサポートされています。 特別なヘッド ノードは set::end (STL/CLR)()が返す反復子に対応します。 存在する場合、被制御シーケンスの最後の要素にアクセスするためにこの反復子をデクリメントすることができます。 ヘッド ノードに到達する設定の反復子をインクリメントすることができます end()と等号を比較します。 ただし、end()が返す反復子を逆参照できません。

直接数値位置が設定の要素を参照できないことに注意してください。。これはランダム アクセス反復子を必要とします。

設定の反復子は、関連するコンテナーにハンドルを格納する関連設定ノードへのハンドルを格納します。 関連するコンテナー オブジェクトでのみ反復子を使用できます。 設定の反復子は、関連付けられたセット ノードが設定に関連付けられている限り有効です。 また、有効な反復子は dereferencable です。指定した要素の値にアクセスするか、または変更するために使用できます。。これは end()と等しくない場合。

要素に設定するか、削除して、格納されている値のデストラクターを呼び出します。 コンテナーが破棄されると、すべての要素を消去します。 したがって、要素の型が ref クラスにあるコンテナー要素がコンテナーを重視されることを確認します。 ただし、Handles のコンテナーが not の要素を破棄されます。

必要条件

ヘッダー: <cliext および設定>

名前空間: の cliext

参照

関連項目

hash_map (STL/CLR)

hash_set (STL/CLR)

hash_set (STL/CLR)

hash_set (STL/CLR)

map (STL/CLR)

set (STL/CLR)

set (STL/CLR)

その他の技術情報

STL/CLR ライブラリ リファレンス