NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
载入中...
搜索中...
未找到
可选值

可选值类型及相关操作 更多...

class  optional< T >
 可选值类 更多...
class  optional< T & >
 引用可选值类模板 更多...

函数

template<typename T, typename... Args, enable_if_t< is_constructible_v< T, Args... >, int > = 0>
constexpr optional< T > make_optional (Args &&... args) noexcept(is_nothrow_constructible_v< T, Args... >)
 原位构造可选值
template<typename T, typename U, typename... Args>
constexpr enable_if_t< is_constructible_v< T, std::initializer_list< U > &, Args... >, optional< T > > make_optional (std::initializer_list< U > ilist, Args &&... args) noexcept(is_nothrow_constructible_v< T, std::initializer_list< U > &, Args... >)
 使用初始化列表原位构造可选值
template<typename T>
constexpr const T & get (const optional< T > &opt)
 获取可选值中的值
template<typename T>
constexpr T & get (optional< T > &opt)
 获取可选值中的值
template<typename T>
constexpr const T && get (const optional< T > &&opt)
 获取可选值中的值
template<typename T>
constexpr T && get (optional< T > &&opt)
 获取可选值中的值

详细描述

可选值类型及相关操作

函数说明

◆ get() [1/4]

template<typename T>
const T && get ( const optional< T > && opt)
constexpr

获取可选值中的值

模板参数
T可选值持有的值类型
参数
opt可选值
返回
指定位置元素的常量右值引用
异常
optional_exception如果值未存储

在文件 optional.hpp1367 行定义.

引用了 optional< T >::value().

◆ get() [2/4]

template<typename T>
const T & get ( const optional< T > & opt)
constexpr

获取可选值中的值

模板参数
T可选值持有的值类型
参数
opt可选值
返回
指定位置元素的常量左值引用
异常
optional_exception如果值未存储

在文件 optional.hpp1343 行定义.

引用了 optional< T >::value().

◆ get() [3/4]

template<typename T>
T && get ( optional< T > && opt)
constexpr

获取可选值中的值

模板参数
T可选值持有的值类型
参数
opt可选值
返回
指定位置元素的右值引用
异常
optional_exception如果值未存储

在文件 optional.hpp1379 行定义.

引用了 optional< T >::value().

◆ get() [4/4]

template<typename T>
T & get ( optional< T > & opt)
constexpr

获取可选值中的值

模板参数
T可选值持有的值类型
参数
opt可选值
返回
指定位置元素的左值引用
异常
optional_exception如果值未存储

在文件 optional.hpp1355 行定义.

引用了 optional< T >::value().

◆ make_optional() [1/2]

template<typename T, typename... Args, enable_if_t< is_constructible_v< T, Args... >, int > = 0>
optional< T > make_optional ( Args &&... args)
constexprnoexcept

原位构造可选值

模板参数
T值类型
Args参数类型
参数
args构造参数
返回
构造的可选值

在文件 optional.hpp1314 行定义.

引用了 forward() , 以及 is_nothrow_constructible_v.

◆ make_optional() [2/2]

template<typename T, typename U, typename... Args>
enable_if_t< is_constructible_v< T, std::initializer_list< U > &, Args... >, optional< T > > make_optional ( std::initializer_list< U > ilist,
Args &&... args )
constexprnoexcept

使用初始化列表原位构造可选值

模板参数
T值类型
U初始化列表元素类型
Args参数类型
参数
ilist初始化列表
args构造参数
返回
构造的可选值

在文件 optional.hpp1329 行定义.

引用了 forward() , 以及 is_nothrow_constructible_v.