std::owner_less
定义于头文件 <memory>
|
||
template<> struct owner_less<void>; |
(C++17 起) | |
std::owner_less<> 是拥有待推导形参类型的 std::owner_less 特化。
成员类型
成员类型 | 定义 |
is_transparent
|
/* 未指定 */ |
注意
成员类型 is_transparent
指示调用方,此函数对象是一个通透函数对象:它接受任意类型的参数并使用完美转发,这在将函数对象在多种语境中,或以右值参数使用时,避免不需要的复制和转换。特别是,诸如 std::set::find 和 std::set::lower_bound 的模板函数在其 Compare
类型上使用此类型。
成员函数
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 | - | 要比较的共享所有权指针 |
返回值
若以基于占有者的顺序确定 lhs
小于 rhs
则为 true 。
参阅
提供基于拥有者的共享指针排序 ( std::shared_ptr<T> 的公开成员函数) | |
提供弱指针的基于拥有者顺序 ( std::weak_ptr<T> 的公开成员函数) |