|
NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
|
独占智能指针类和辅助工具 更多...
类 | |
| class | unique_ptr< T, Deleter > |
| 独占智能指针 更多... | |
| class | unique_ptr< T[], Deleter > |
| 数组特化的unique_ptr 更多... | |
函数 | |
| template<typename T, typename Deleter, enable_if_t< is_swappable< Deleter >::value &&is_swappable< T >::value, int > = 0> | |
| void | swap (unique_ptr< T, Deleter > &lhs, unique_ptr< T, Deleter > &rhs) noexcept |
| 交换两个unique_ptr | |
| template<typename T, typename D, typename U, typename E> | |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool | operator== (const unique_ptr< T, D > &lhs, const unique_ptr< U, E > &rhs) |
| 相等比较运算符 | |
| template<typename T, typename D> | |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool | operator== (const unique_ptr< T, D > &lhs, nullptr_t) |
| 与nullptr的相等比较运算符 | |
| template<typename T, typename D> | |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool | operator== (nullptr_t, const unique_ptr< T, D > &rhs) |
| nullptr与unique_ptr的相等比较运算符 | |
| template<typename T, typename D, typename U, typename E> | |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool | operator!= (const unique_ptr< T, D > &lhs, const unique_ptr< U, E > &rhs) |
| 不等比较运算符 | |
| template<typename T, typename D> | |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool | operator!= (const unique_ptr< T, D > &lhs, nullptr_t) |
| 与nullptr的不等比较运算符 | |
| template<typename T, typename D> | |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool | operator!= (nullptr_t, const unique_ptr< T, D > &rhs) |
| nullptr与unique_ptr的不等比较运算符 | |
| template<typename T, typename D, typename U, typename E> | |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool | operator< (const unique_ptr< T, D > &lhs, const unique_ptr< U, E > &rhs) |
| 小于比较运算符 | |
| template<typename T, typename D> | |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool | operator< (const unique_ptr< T, D > &lhs, nullptr_t) |
| 与nullptr的小于比较运算符 | |
| template<typename T, typename D> | |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool | operator< (nullptr_t, const unique_ptr< T, D > &rhs) |
| nullptr与unique_ptr的小于比较运算符 | |
| template<typename T, typename D, typename U, typename E> | |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool | operator> (const unique_ptr< T, D > &lhs, const unique_ptr< U, E > &rhs) |
| 大于比较运算符 | |
| template<typename T, typename D> | |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool | operator> (const unique_ptr< T, D > &lhs, nullptr_t) |
| 与nullptr的大于比较运算符 | |
| template<typename T, typename D> | |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool | operator> (nullptr_t, const unique_ptr< T, D > &rhs) |
| nullptr与unique_ptr的大于比较运算符 | |
| template<typename T, typename D, typename U, typename E> | |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool | operator<= (const unique_ptr< T, D > &lhs, const unique_ptr< U, E > &rhs) |
| 小于等于比较运算符 | |
| template<typename T, typename D> | |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool | operator<= (const unique_ptr< T, D > &lhs, nullptr_t) |
| 与nullptr的小于等于比较运算符 | |
| template<typename T, typename D> | |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool | operator<= (nullptr_t, const unique_ptr< T, D > &rhs) |
| nullptr与unique_ptr的小于等于比较运算符 | |
| template<typename T, typename D, typename U, typename E> | |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool | operator>= (const unique_ptr< T, D > &lhs, const unique_ptr< U, E > &rhs) |
| 大于等于比较运算符 | |
| template<typename T, typename D> | |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool | operator>= (const unique_ptr< T, D > &lhs, nullptr_t) |
| 与nullptr的大于等于比较运算符 | |
| template<typename T, typename D> | |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool | operator>= (nullptr_t, const unique_ptr< T, D > &rhs) |
| nullptr与unique_ptr的大于等于比较运算符 | |
| template<typename T, typename U> | |
| unique_ptr< T > | static_pointer_cast (const unique_ptr< U > &ptr)=delete |
| 禁止的static_pointer_cast | |
| template<typename T, typename U> | |
| unique_ptr< T > | const_pointer_cast (const unique_ptr< U > &ptr)=delete |
| 禁止的const_pointer_cast | |
| template<typename T, typename U> | |
| unique_ptr< T > | reinterpret_pointer_cast (const unique_ptr< U > &ptr)=delete |
| 禁止的reinterpret_pointer_cast | |
| template<typename T, typename U> | |
| unique_ptr< T > | dynamic_pointer_cast (const unique_ptr< U > &ptr)=delete |
| 禁止的dynamic_pointer_cast | |
| template<typename T, typename U> | |
| NEFORCE_CONSTEXPR20 unique_ptr< T > | static_pointer_cast (unique_ptr< U > &&ptr) |
| static_pointer_cast | |
| template<typename T, typename U> | |
| NEFORCE_CONSTEXPR20 unique_ptr< T > | const_pointer_cast (unique_ptr< U > &&ptr) |
| const_pointer_cast | |
| template<typename T, typename U> | |
| unique_ptr< T > | reinterpret_pointer_cast (unique_ptr< U > &&ptr) |
| const_pointer_cast | |
| template<typename T, typename U> | |
| unique_ptr< T > | dynamic_pointer_cast (unique_ptr< U > &&ptr) |
| reinterpret_pointer_cast | |
| template<typename T, typename... Args, enable_if_t<!is_array< T >::value, int > = 0> | |
| NEFORCE_CONSTEXPR20 unique_ptr< T > | make_unique (Args &&... args) |
| 创建unique_ptr | |
| template<typename T, enable_if_t< is_unbounded_array< T >::value, int > = 0> | |
| NEFORCE_CONSTEXPR20 unique_ptr< T > | make_unique (const size_t len) |
| 创建unique_ptr | |
| template<typename T, typename... Args, enable_if_t< is_bounded_array< T >::value, int > = 0> | |
| unique_ptr< T > | make_unique (Args &&...)=delete |
| 禁止创建已知边界数组的make_unique | |
独占智能指针类和辅助工具
|
delete |
禁止的const_pointer_cast
| T | 目标类型 |
| U | 源类型 |
| ptr | 源unique_ptr |
| NEFORCE_CONSTEXPR20 unique_ptr< T > const_pointer_cast | ( | unique_ptr< U > && | ptr | ) |
|
delete |
禁止的dynamic_pointer_cast
| T | 目标类型 |
| U | 源类型 |
| ptr | 源unique_ptr |
| unique_ptr< T > dynamic_pointer_cast | ( | unique_ptr< U > && | ptr | ) |
reinterpret_pointer_cast
| T | 目标类型 |
| U | 源类型 |
| ptr | 源unique_ptr |
在文件 unique_ptr.hpp 第 919 行定义.
引用了 move().
| NEFORCE_CONSTEXPR20 unique_ptr< T > make_unique | ( | Args &&... | args | ) |
创建unique_ptr
| T | 元素类型 |
| Args | 构造函数参数类型 |
| args | 构造函数参数 |
在文件 unique_ptr.hpp 第 963 行定义.
引用了 forward().
被这些函数引用 typed_exception_wrapper< Ex >::clone(), env_parser::env_parser(), meta_type::function(), get_current_task_group(), ini_document::ini_document(), ini_parser::ini_parser(), exception_ptr::make_exception_ptr, meta_any::meta_any(), lock_free_queue< T >::pop(), meta_type::property(), registry::register_type(), ini_section::set_property(), env_document::set_variable(), toml_parser::toml_parser(), tree_barrier< CmplFunc >::tree_barrier(), lock_free_queue< T >::try_pop(), json_builder::value(), json_builder::value(), json_builder::value(), json_builder::value(), json_builder::value(), toml_builder::value(), toml_builder::value(), toml_builder::value(), toml_builder::value(), toml_builder::value(), toml_builder::value_datetime() , 以及 toml_builder::value_string().
|
delete |
禁止创建已知边界数组的make_unique
| T | 已知边界数组类型 |
| Args | 参数类型 |
| NEFORCE_CONSTEXPR20 unique_ptr< T > make_unique | ( | const size_t | len | ) |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool operator!= | ( | const unique_ptr< T, D > & | lhs, |
| const unique_ptr< U, E > & | rhs ) |
不等比较运算符
| T | 左操作数元素类型 |
| D | 左操作数删除器类型 |
| U | 右操作数元素类型 |
| E | 右操作数删除器类型 |
| lhs | 左操作数 |
| rhs | 右操作数 |
在文件 unique_ptr.hpp 第 648 行定义.
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool operator!= | ( | const unique_ptr< T, D > & | lhs, |
| nullptr_t | ) |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool operator!= | ( | nullptr_t | , |
| const unique_ptr< T, D > & | rhs ) |
nullptr与unique_ptr的不等比较运算符
| T | 元素类型 |
| D | 删除器类型 |
| rhs | unique_ptr对象 |
在文件 unique_ptr.hpp 第 672 行定义.
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool operator< | ( | const unique_ptr< T, D > & | lhs, |
| const unique_ptr< U, E > & | rhs ) |
小于比较运算符
| T | 左操作数元素类型 |
| D | 左操作数删除器类型 |
| U | 右操作数元素类型 |
| E | 右操作数删除器类型 |
| lhs | 左操作数 |
| rhs | 右操作数 |
在文件 unique_ptr.hpp 第 687 行定义.
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool operator< | ( | const unique_ptr< T, D > & | lhs, |
| nullptr_t | ) |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool operator< | ( | nullptr_t | , |
| const unique_ptr< T, D > & | rhs ) |
nullptr与unique_ptr的小于比较运算符
| T | 元素类型 |
| D | 删除器类型 |
| rhs | unique_ptr对象 |
在文件 unique_ptr.hpp 第 712 行定义.
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool operator<= | ( | const unique_ptr< T, D > & | lhs, |
| const unique_ptr< U, E > & | rhs ) |
小于等于比较运算符
| T | 左操作数元素类型 |
| D | 左操作数删除器类型 |
| U | 右操作数元素类型 |
| E | 右操作数删除器类型 |
| lhs | 左操作数 |
| rhs | 右操作数 |
在文件 unique_ptr.hpp 第 766 行定义.
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool operator<= | ( | const unique_ptr< T, D > & | lhs, |
| nullptr_t | ) |
与nullptr的小于等于比较运算符
| T | 元素类型 |
| D | 删除器类型 |
| lhs | unique_ptr对象 |
在文件 unique_ptr.hpp 第 778 行定义.
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool operator<= | ( | nullptr_t | , |
| const unique_ptr< T, D > & | rhs ) |
nullptr与unique_ptr的小于等于比较运算符
| T | 元素类型 |
| D | 删除器类型 |
| rhs | unique_ptr对象 |
在文件 unique_ptr.hpp 第 790 行定义.
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool operator== | ( | const unique_ptr< T, D > & | lhs, |
| const unique_ptr< U, E > & | rhs ) |
相等比较运算符
| T | 左操作数元素类型 |
| D | 左操作数删除器类型 |
| U | 右操作数元素类型 |
| E | 右操作数删除器类型 |
| lhs | 左操作数 |
| rhs | 右操作数 |
在文件 unique_ptr.hpp 第 609 行定义.
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool operator== | ( | const unique_ptr< T, D > & | lhs, |
| nullptr_t | ) |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool operator== | ( | nullptr_t | , |
| const unique_ptr< T, D > & | rhs ) |
nullptr与unique_ptr的相等比较运算符
| T | 元素类型 |
| D | 删除器类型 |
| rhs | unique_ptr对象 |
在文件 unique_ptr.hpp 第 633 行定义.
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool operator> | ( | const unique_ptr< T, D > & | lhs, |
| const unique_ptr< U, E > & | rhs ) |
大于比较运算符
| T | 左操作数元素类型 |
| D | 左操作数删除器类型 |
| U | 右操作数元素类型 |
| E | 右操作数删除器类型 |
| lhs | 左操作数 |
| rhs | 右操作数 |
在文件 unique_ptr.hpp 第 727 行定义.
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool operator> | ( | const unique_ptr< T, D > & | lhs, |
| nullptr_t | ) |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool operator> | ( | nullptr_t | , |
| const unique_ptr< T, D > & | rhs ) |
nullptr与unique_ptr的大于比较运算符
| T | 元素类型 |
| D | 删除器类型 |
| rhs | unique_ptr对象 |
在文件 unique_ptr.hpp 第 751 行定义.
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool operator>= | ( | const unique_ptr< T, D > & | lhs, |
| const unique_ptr< U, E > & | rhs ) |
大于等于比较运算符
| T | 左操作数元素类型 |
| D | 左操作数删除器类型 |
| U | 右操作数元素类型 |
| E | 右操作数删除器类型 |
| lhs | 左操作数 |
| rhs | 右操作数 |
在文件 unique_ptr.hpp 第 805 行定义.
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool operator>= | ( | const unique_ptr< T, D > & | lhs, |
| nullptr_t | ) |
与nullptr的大于等于比较运算符
| T | 元素类型 |
| D | 删除器类型 |
| lhs | unique_ptr对象 |
在文件 unique_ptr.hpp 第 817 行定义.
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool operator>= | ( | nullptr_t | , |
| const unique_ptr< T, D > & | rhs ) |
nullptr与unique_ptr的大于等于比较运算符
| T | 元素类型 |
| D | 删除器类型 |
| rhs | unique_ptr对象 |
在文件 unique_ptr.hpp 第 829 行定义.
|
delete |
禁止的reinterpret_pointer_cast
| T | 目标类型 |
| U | 源类型 |
| ptr | 源unique_ptr |
| unique_ptr< T > reinterpret_pointer_cast | ( | unique_ptr< U > && | ptr | ) |
|
delete |
禁止的static_pointer_cast
| T | 目标类型 |
| U | 源类型 |
| ptr | 源unique_ptr |
| NEFORCE_CONSTEXPR20 unique_ptr< T > static_pointer_cast | ( | unique_ptr< U > && | ptr | ) |
static_pointer_cast
| T | 目标类型 |
| U | 源类型 |
| ptr | 源unique_ptr |
在文件 unique_ptr.hpp 第 883 行定义.
|
noexcept |