std::unordered_set<Key,Hash,KeyEqual,Allocator>::bucket
From cppreference.com
< cpp | container | unordered set
C++
Feature test macros (C++20)
Concepts library (C++20)
Metaprogramming library (C++11)
Ranges library (C++20)
Filesystem library (C++17)
Concurrency support library (C++11)
Execution control library (C++26)
Containers library
(C++17)
(C++11)
(C++26)
(C++26)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++23)
(C++23)
(C++23)
(C++23)
(C++20)
(C++23)
Tables
std::unordered_set
(C++17)
(C++17)
(C++23)
(C++20)
unordered_set::bucket
(until C++20)
size_type bucket( const Key& key ) const;
(1)
(since C++11)
template< typename K >
size_type bucket( const K& x ) const;
(2)
(since C++26)
size_type bucket( const K& x ) const;
1) Returns the index of the bucket for key key. Elements (if any) with keys equivalent to key are always found in this bucket.
2) Returns the index of the bucket for key that compares equivalent to the value x. Elements (if any) with keys that compare equivalent to x are always found in this bucket. This overload participates in overload resolution only if
Hash
and KeyEqual
are both transparent. This assumes that such Hash
is callable with both K
and Key
type, and that the KeyEqual
is transparent, which, together, allows calling this function without constructing an instance of Key
.The returned value is valid only for instances of the container for which bucket_count() returns the same value (e.g., rehash() invalidates previously obtained value).
The behavior is undefined if bucket_count() is zero.
[edit] Parameters
key
-
the value of the key to examine
x
-
a value of any type that can be transparently compared with a key
[edit] Return value
Bucket index for the requested key.
[edit] Complexity
Constant.
[edit] Notes
Feature-test macro | Value | Std | Feature |
---|---|---|---|
__cpp_lib_associative_heterogeneous_insertion |
202311L |
(C++26) | Heterogeneous overloads for the remaining member functions in ordered and unordered associative containers. (2) |
[edit] Example
This section is incomplete
Reason: no example
Reason: no example