| xgboost | 
入侵式指针的实现。更多...
#include <atomic>#include <cinttypes>#include <functional>#include <ostream>

| 类 | |
| 类 | xgboost::IntrusivePtrCell | 
| 用于将引用计数嵌入客户端对象的辅助类。有关内存顺序的讨论,请参阅 https://boost.ac.cn/doc/libs/1_74_0/doc/html/atomic/usage_examples.html。更多... | |
| 类 | xgboost::IntrusivePtr< T > | 
| 侵入式指针的实现。一个智能指针,指向一个嵌入了引用计数器的对象。底层对象必须实现一个友元函数IntrusivePtrRefCount(),该函数返回引用计数器(类型为IntrusivePtrCell)。侵入式指针比std::shared_ptr<>更快:std::shared_ptr<>为引用计数器进行了额外的内存分配,而侵入式指针则没有。更多... | |
| 结构 | xgboost::IntrusivePtr< T >::Hash | 
| 结构 | std::hash< xgboost::IntrusivePtr< T > > | 
| 命名空间 | |
| xgboost | |
| Learner 接口,将目标、gbm 和评估整合在一起。这是用户界面 XGBoost 训练模块。 | |
| std | |
| 函数 | |
| template<typename T > | |
| IntrusivePtrCell & | xgboost::IntrusivePtrRefCount (T const *ptr) 无抛出 | 
| 用于返回嵌入式引用计数的用户定义函数。更多... | |
| template<class T , class U > | |
| bool | xgboost::operator== (IntrusivePtr< T > const &x, IntrusivePtr< U > const &y) 无抛出 | 
| template<class T , class U > | |
| bool | xgboost::operator!= (IntrusivePtr< T > const &x, IntrusivePtr< U > const &y) 无抛出 | 
| template<class T , class U > | |
| bool | xgboost::operator== (IntrusivePtr< T > const &x, U *y) 无抛出 | 
| template<class T , class U > | |
| bool | xgboost::operator!= (IntrusivePtr< T > const &x, U *y) 无抛出 | 
| template<class T , class U > | |
| bool | xgboost::operator== (T *x, IntrusivePtr< U > const &y) 无抛出 | 
| template<class T , class U > | |
| bool | xgboost::operator!= (T *x, IntrusivePtr< U > const &y) 无抛出 | 
| template<class T > | |
| bool | xgboost::operator< (IntrusivePtr< T > const &x, IntrusivePtr< T > const &y) 无抛出 | 
| template<class T > | |
| bool | xgboost::operator<= (IntrusivePtr< T > const &x, IntrusivePtr< T > const &y) 无抛出 | 
| template<class T > | |
| bool | xgboost::operator> (IntrusivePtr< T > const &x, IntrusivePtr< T > const &y) 无抛出 | 
| template<class T > | |
| bool | xgboost::operator>= (IntrusivePtr< T > const &x, IntrusivePtr< T > const &y) 无抛出 | 
| 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) 无抛出 | 
侵入式指针的实现。
Copyright (c) 2020 Contributors