std::unordered_multiset<Key,Hash,KeyEqual,Allocator>:: contains
From cppreference.net
<
cpp
|
container
|
unordered multiset
|
bool
contains
(
const
Key
&
key
)
const
;
|
(1) |
(начиная с C++20)
(constexpr начиная с C++26) |
|
template
<
class
K
>
bool contains ( const K & x ) const ; |
(2) |
(начиная с C++20)
(constexpr начиная с C++26) |
1)
Проверяет, присутствует ли в контейнере элемент с ключом, эквивалентным
key
.
2)
Проверяет, существует ли элемент с ключом, эквивалентным
x
.
Эта перегрузка участвует в разрешении перегрузки только если
Hash
и
KeyEqual
оба являются
прозрачными
. Это предполагает, что такой
Hash
может быть вызван с обоими типами
K
и
Key
, и что
KeyEqual
является прозрачным, что вместе позволяет вызывать эту функцию без создания экземпляра
Key
.
Содержание |
Параметры
| key | - | ключевое значение элемента для поиска |
| x | - | значение любого типа, которое может быть прозрачно сравнено с ключом |
Возвращаемое значение
true если такой элемент существует, в противном случае false .
Сложность
В среднем константная, в худшем случае линейная от размера контейнера.
Пример
Запустить этот код
#include <iostream> #include <unordered_set> int main() { std::unordered_multiset<int> example{1, 2, 3, 4}; for (int x : {2, 5}) if (example.contains(x)) std::cout << x << ": Found\n"; else std::cout << x << ": Not found\n"; }
Вывод:
2: Found 5: Not found
Смотрите также
|
находит элемент с указанным ключом
(public member function) |
|
|
возвращает количество элементов, соответствующих указанному ключу
(public member function) |
|
|
возвращает диапазон элементов, соответствующих указанному ключу
(public member function) |