Spec-Zone.ru › C++

std::set<Key,Compare,Allocator>::lower_bound

iterator lower_bound( const Key& key );
(1)
const_iterator lower_bound( const Key& key ) const;
(2)
template< class K >
iterator lower_bound( const K& x );
(3) (начиная с C++14)
template< class K >
const_iterator lower_bound( const K& x ) const;
(4) (начиная с C++14)
1,2) Возвращает итератор, указывающий на первый элемент, который не меньше (то есть больше или равен) key.
3,4) Возвращает итератор, указывающий на первый элемент, который при сравнении оказывается не меньше (то есть больше или равен) значения x. Эта перегрузка участвует в разрешении перегрузки только в том случае, если квалифицированное имя Compare::is_transparent является допустимым и обозначает тип. Это позволяет вызывать данную функцию без создания экземпляра Key.

Параметры

key - значение ключа, с которым сравниваются элементы
x - альтернативное значение, которое можно сравнить с Key

Возвращаемое значение

Итератор, указывающий на первый элемент, который не является меньше key. Если такой элемент не найден, возвращается итератор за последним элементом (см. end()).

Сложность

Логарифмическая относительно размера контейнера.

Примечания

Макрос проверки поддержки Значение Стандарт Возможность
__cpp_lib_generic_associative_lookup 201304L (C++14) Поиск по гетерогенному сравнению в ассоциативных контейнерах; перегрузки (3,4)

Пример

См. также

equal_range
возвращает диапазон элементов, соответствующих указанному ключу
(открытая функция-член)
upper_bound
возвращает итератор на первый элемент, больший заданного ключа
(открытая функция-член)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/container/set/lower_bound

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API