std::unordered_set<Key,Hash,KeyEqual,Allocator>::bucket
來自 cppreference.com
size_type bucket( const Key& key ) const; |
(1) | (C++11 起) |
template< typename K > size_type bucket( const K& x ) const; |
(2) | (C++26 起) |
1) 返回鍵 key 所屬桶的索引。與 key 等效的元素(如果有)總是在此桶中找到。
2) 返回鍵所屬桶的索引,該鍵與值 x 比較等效。與 x 比較等效的元素(如果有)總是在此桶中找到。此過載僅在 Hash::is_transparent 和 KeyEqual::is_transparent 有效且各自表示一個型別時才參與過載決議。這假定此類
Hash
可以使用 K
和 Key
型別呼叫,並且 KeyEqual
是透明的,這共同允許在不構造 Key
例項的情況下呼叫此函式。返回的值僅對容器例項有效,這些例項的 bucket_count() 返回相同的值(例如,rehash() 使先前獲取的值失效)。
如果 bucket_count() 為零,則行為未定義。
目錄 |
[編輯] 引數
key | - | 要檢查的鍵的值 |
x | - | 可與鍵透明比較的任何型別的值 |
[編輯] 返回值
請求的鍵的桶索引。
[編輯] 複雜度
常數時間。
[編輯] 注意
特性測試宏 | 值 | 標準 | 特性 |
---|---|---|---|
__cpp_lib_associative_heterogeneous_insertion |
202311L |
(C++26) | 有序和無序關聯容器中剩餘成員函式的異構過載。(2) |
[編輯] 示例
本節不完整 原因:無示例 |
[編輯] 參閱
返回特定桶中的元素數量 (public member function) |