std::owner_less
Определено в заголовочном файле <memory>
|
||
template<> struct owner_less<void>; |
(начиная с C++17) | |
std::owner_less<> это специализация std::owner_less с выведенными типами параметров.
Содержание |
[править] Типы элементы
Тип элемент | Определение |
is_transparent
|
не указано |
[править] Примечание
Тип элемент is_transparent
указывает вызывающему объекту, что этот функциональный объект является прозрачным: он принимает аргументы произвольных типов и использует идеальную переадресацию, которая позволяет избежать ненужного копирования и преобразования, когда функциональный объект используется в разнородном контексте или с аргументами rvalue. В частности, шаблонные функции, такие как std::set::find и std::set::lower_bound , используют этот тип элемента в своих типах Compare
.
Макрос Тестирования функциональности | Значение | Стандарт | Функциональность |
---|---|---|---|
__cpp_lib_transparent_operators |
201510L | (C++17) | Прозрачный std::owner_less (std::owner_less<void>) |
[править] Функции-элементы
operator() |
сравнивает свои аргументы, используя семантику на основе владельца (функция) |
std::owner_less<void>::operator()
template<class T, class U> bool operator()( const std::shared_ptr<T>& lhs, |
(начиная с C++17) | |
template<class T, class U> bool operator()( const std::shared_ptr<T>& lhs, |
(начиная с C++17) | |
template<class T, class U> bool operator()( const std::weak_ptr<T>& lhs, |
(начиная с C++17) | |
template<class T, class U> bool operator()( const std::weak_ptr<T>& lhs, |
(начиная с C++17) | |
Сравнивает lhs и rhs, используя семантику на основе владельца. Эффективно вызывает lhs.owner_before(rhs).
Порядок является строгим слабым отношением порядка.
lhs и rhs эквивалентны, только если они оба пусты или имеют общее владение.
Параметры
lhs, rhs | — | указатели общего владения для сравнения |
Возвращаемое значение
true, если lhs меньше чем rhs, как определено порядком на основе владельцев.
[править] Смотрите также
обеспечивает упорядочивание общих указателей на основе владельца (public функция-элемент std::shared_ptr )
| |
обеспечивает упорядочивание слабых указателей на основе владельцев (public функция-элемент std::weak_ptr<T> )
|