xgboost
| 命名空间 | 函数
intrusive_ptr.h 文件参考

侵入式指针 (Intrusive Ptr) 的实现。更多...

#include <atomic>
#include <cinttypes>
#include <functional>
#include <ostream>
intrusive_ptr.h 的包含依赖图
此图显示了哪些文件直接或间接包含了此文件

转到此文件的源代码。

class  xgboost::IntrusivePtrCell
 用于将引用计数嵌入到客户端对象的辅助类。有关内存顺序的讨论,请参见 https://boost.ac.cn/doc/libs/1_74_0/doc/html/atomic/usage_examples.html更多...
 
class  xgboost::IntrusivePtr< T >
 侵入式指针 (Intrusive Pointer) 的实现。一个智能指针,指向带有嵌入式引用计数器的对象。底层对象必须实现一个友元函数 IntrusivePtrRefCount(),该函数返回引用计数器(类型为 IntrusivePtrCell)。侵入式指针比 std::shared_ptr<> 更快:std::shared_ptr<> 会为引用计数器额外分配内存,而侵入式指针则不会。更多...
 
struct  xgboost::IntrusivePtr< T >::Hash
 
struct  std::hash< xgboost::IntrusivePtr< T > >
 

命名空间

 xgboost
 多目标树的核心数据结构。
 
 std
 

函数

template<typename T >
IntrusivePtrCell & xgboost::IntrusivePtrRefCount (T const *ptr) noexcept
 用于返回嵌入式引用计数的用户定义函数。更多...
 
template<class T , class U >
bool xgboost::operator== (IntrusivePtr< T > const &x, IntrusivePtr< U > const &y) noexcept
 
template<class T , class U >
bool xgboost::operator!= (IntrusivePtr< T > const &x, IntrusivePtr< U > const &y) noexcept
 
template<class T , class U >
bool xgboost::operator== (IntrusivePtr< T > const &x, U *y) noexcept
 
template<class T , class U >
bool xgboost::operator!= (IntrusivePtr< T > const &x, U *y) noexcept
 
template<class T , class U >
bool xgboost::operator== (T *x, IntrusivePtr< U > const &y) noexcept
 
template<class T , class U >
bool xgboost::operator!= (T *x, IntrusivePtr< U > const &y) noexcept
 
template<class T >
bool xgboost::operator< (IntrusivePtr< T > const &x, IntrusivePtr< T > const &y) noexcept
 
template<class T >
bool xgboost::operator<= (IntrusivePtr< T > const &x, IntrusivePtr< T > const &y) noexcept
 
template<class T >
bool xgboost::operator> (IntrusivePtr< T > const &x, IntrusivePtr< T > const &y) noexcept
 
template<class T >
bool xgboost::operator>= (IntrusivePtr< T > const &x, IntrusivePtr< T > const &y) noexcept
 
template<class E , class T , class Y >
std::basic_ostream< E, T > & xgboost::operator<< (std::basic_ostream< E, T > &os, IntrusivePtr< Y > const &p)
 
template<class T >
void std::swap (xgboost::IntrusivePtr< T > &x, xgboost::IntrusivePtr< T > &y) noexcept
 

详细描述

侵入式指针 (Intrusive Ptr) 的实现。

版权所有 (c) Contributors 2020