共用方式為


hash_set::hash_set

注意事項注意事項

這個 API 已經過時。替代方案是 unordered_set 類別

建構一個空的 hash_set,或者其他 hash_set 的全部或部分複本。

hash_set( );
explicit hash_set(
    const Traits& Comp
);
hash_set(
    const Traits& Comp,
    const Allocator& Al
);
hash_set(
    const hash_set<Key, Traits, Allocator>& Right
);
hash_set(
    hash_set&& Right
);
hash_set(
     initializer_list<Type> IList
);
hash_set(
      initializer_list<Type> IList, 
     const Compare& Comp
);
hash_set(
      initializer_list<value_type> IList, 
     const Compare& Comp, 
     const Allocator& Al
); 
template<class InputIterator>
    hash_set(
        InputIterator First,
        InputIterator Last
    );
template<class InputIterator>
    hash_set(
        InputIterator First,
        InputIterator Last,
        const Traits& Comp
    );
template<class InputIterator>
    hash_set(
        InputIterator First,
        InputIterator Last,
        const Traits& Comp,
        const Allocator& Al
    );

參數

參數

說明

Al

這個 hash_set 物件所使用的儲存體配置器類別,預設值為 Allocator

Comp

用於 hash_set 的排序集合元素的 const Traits 型別的比較函式,其預設值為 hash_compare

Right

要複製之已建構 hash_sethash_set

First

在要複製之項目範圍中第一個項目的位置。

Last

超出要複製之項目範圍的第一個項目的位置。

備註

所有建構函式所儲存的配置器物件型別處理 hash_set 的記憶體儲存,並可藉由呼叫 hash_set::get_allocator 之後傳回。 配置器參數通常會在類別宣告中被省略,而前置處理巨集器會以替代配置器來做代換。

所有的建構函式都初始化其 hash_sets。

建構函式會儲存一種 Traits 型別的函式物件,以用於在hash_set 索引值中建立順序,並可藉由呼叫 hash_set::key_comp 後傳回此物件。 如需 Traits 的詳細資訊,請參閱主題 hash_set 類別

第一個建構函式產生一個初始化為空的 hash_set,第二個建構函式指定比較函式的型別 (Comp) ,用於建立元素順序,第三個則明確指定用到的配置器型別 (Al) 。 關鍵字 explicit 禁止某些型別的自動轉換。

第四和第五個建構函式指定 hash_setRight 的複本。

最後第六、第七和第八建構函式為元素使用 initializer_list。

最後一個建構函式複製 hash_set 中的 [First, Last) 範圍,並對於類別 Traits 和配置器的比較函式的型別會有漸增的明確性。

第八個建構函式會移除 hash_set Right。

hash_set 容器的項目實際順序取決於雜湊函式、排序函式和雜湊資料表的目前大小,一般而言無法像集合容器一般可預測,因為集合容器只取決於排序函式。

需求

標頭: <hash_set>

**命名空間:**stdext

請參閱

參考

hash_set 類別

標準樣板程式庫