YSTest: ystdex::details::optional_base< _type, true > 模板类 参考

YSTest PreAlpha_b800_20170810 The YSLib Test Project

- 首页
- 相关页面
- 模块
- 命名空间
- 类
- 文件

- 类列表
- 类索引
- 类继承关系
- 类成员

Public 成员函数 | Protected 类型 | 所有成员列表
ystdex::details::optional_base< _type, true > 模板类 参考

`#include <optional.h>`

类 ystdex::details::optional_base< _type, true > 继承关系图:
[图例]
ystdex::details::optional_base< _type, true > 的协作图:
[图例]

## Public 成员函数

| optional_base ()=default
template<typename... _tParams>
| optional_base (in_place_t, _tParams &&...args)
| optional_base (const optional_base &s)
| optional_base (optional_base &&s)
| ~optional_base ()=default
| 析构：空实现。 更多...
optional_base & | operator= (const optional_base &s)
optional_base & | operator= (optional_base &&s)
template<typename _tParam >
optional_base & | assign (_tParam &&arg)
template<typename... _tParams>
void | construct (_tParams &&...args)
void | destroy ()
_type & | get ()
bool | has_value () const
void | reset ()

## Protected 类型

using | base = tagged_value< bool, _type >
Protected 类型 继承自 ystdex::tagged_value< bool, _type >
using | token_type = bool
using | value_type = _type

## 额外继承的成员函数

Protected 成员函数 继承自 ystdex::tagged_value< bool, _type >
| tagged_value ()
| tagged_value (default_init_t)
| tagged_value (token_type t)
| tagged_value (token_type t, in_place_t, _tParams &&...args)
| tagged_value (const tagged_value &v)
| ~tagged_value ()
| 析构：空实现。 更多...
void | construct (_tParams &&...args)
void | destroy ()
void | destroy_nothrow ()
Protected 属性 继承自 ystdex::tagged_value< bool, _type >
token_type | token
empty_base | empty
_type | value
union {
empty_base empty
_type value
}; |

## 详细描述

### template<typename _type>
class ystdex::details::optional_base< _type, true >

在文件 optional.h 第 118 行定义.

## 成员类型定义说明

template<typename _type >

using ystdex::details::optional_base< _type, true >::base = tagged_value<bool, _type>

protected

自从
  build 718

在文件 optional.h 第 126 行定义.

## 构造及析构函数说明

template<typename _type >

ystdex::details::optional_base< _type, true >::optional_base | ( |  | ) |

inlinedefault

template<typename _type >
template<typename... _tParams>

ystdex::details::optional_base< _type, true >::optional_base | ( | in_place_t | ,
|  | _tParams &&... | args
| ) |  |

inlineexplicit

在文件 optional.h 第 136 行定义.

template<typename _type >

ystdex::details::optional_base< _type, true >::optional_base | ( | const optional_base< _type, true > & | s | ) |

inline

在文件 optional.h 第 139 行定义.

参考 ystdex::any_ops::construct().

函数调用图:
template<typename _type >

ystdex::details::optional_base< _type, true >::optional_base | ( | optional_base< _type, true > && | s | ) |

inline

自从
  build 718

在文件 optional.h 第 146 行定义.

参考 ystdex::any_ops::construct() , 以及 CHRLib::s.

函数调用图:
template<typename _type >

ystdex::details::optional_base< _type, true >::~optional_base | ( |  | ) |

default

析构：空实现。

自从
  build 609

## 成员函数说明

template<typename _type >
template<typename _tParam >

optional_base& ystdex::details::optional_base< _type, true >::assign | ( | _tParam && | arg | ) |

inline

自从
  build 630

在文件 optional.h 第 173 行定义.

参考 ystdex::construct(), ystdex::reset() , 以及 yforward.

函数调用图:
template<typename _type >
template<typename... _tParams>

void ystdex::details::optional_base< _type, true >::construct | ( | _tParams &&... | args | ) |

inline

在文件 optional.h 第 187 行定义.

参考 CHRLib::args, ystdex::any_ops::construct() , 以及 yforward.

函数调用图:
template<typename _type >

void ystdex::details::optional_base< _type, true >::destroy | ( |  | ) |

inline

在文件 optional.h 第 194 行定义.

template<typename _type >

_type& ystdex::details::optional_base< _type, true >::get | ( |  | ) |

inline

在文件 optional.h 第 201 行定义.

template<typename _type >

bool ystdex::details::optional_base< _type, true >::has_value | ( |  | ) | const

inline

自从
  build 718

在文件 optional.h 第 208 行定义.

template<typename _type >

optional_base& ystdex::details::optional_base< _type, true >::operator= | ( | const optional_base< _type, true > & | s | ) |

inline

在文件 optional.h 第 159 行定义.

参考 ystdex::assign().

函数调用图:
template<typename _type >

optional_base& ystdex::details::optional_base< _type, true >::operator= | ( | optional_base< _type, true > && | s | ) |

inline

自从
  build 630

在文件 optional.h 第 165 行定义.

参考 ystdex::assign() , 以及 CHRLib::s.

函数调用图:
template<typename _type >

void ystdex::details::optional_base< _type, true >::reset | ( |  | ) |

inline

在文件 optional.h 第 214 行定义.

参考 ystdex::destroy().

函数调用图:

该类的文档由以下文件生成:

- optional.h