std::unordered_multiset<Key,Hash,KeyEqual,Allocator>::bucket
来自cppreference.com
< cpp | container | unordered multiset
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) |
示例
本节未完成 原因:暂无示例 |
参阅
返回特定的桶中的元素数量 (公开成员函数) |