YSTest: YSLib::GLocalStaticCache< _type, _tPointer > 模板类 参考

YSTest PreAlpha_b900_20201012 The YSLib Test Project

Public 类型 | Public 成员函数 | 静态 Public 成员函数 | Public 属性 | 静态 Private 成员函数 | 所有成员列表
YSLib::GLocalStaticCache< _type, _tPointer > 模板类 参考

全局局部静态单态存储器。 更多...

`#include <YStorage.hpp>`

类 YSLib::GLocalStaticCache< _type, _tPointer > 继承关系图:
[图例]
YSLib::GLocalStaticCache< _type, _tPointer > 的协作图:
[图例]

## Public 类型

using | PointerType = _tPointer

## Public 成员函数

| DefDelCtor (GLocalStaticCache) static DefGetter(ynothrow
| GetStaticPtrRef ()) static const PointerType &GetPointer()
| 取指针。 更多...

## 静态 Public 成员函数

static _type & | GetInstance ()
| 取实例引用。 更多...
static void | Release () ynothrow
| 删除对象并置指针为空值。 更多...

## Public 属性

| PointerType
| PointerRaw

## 静态 Private 成员函数

static PointerType & | GetStaticPtrRef () ynothrow
| 取静态指针引用。 更多...
static void | Check ()
| 检查是否已经初始化，否则构造新对象。 更多...

## 额外继承的成员函数

Private 成员函数 继承自 ystdex::bases::noncopyable
| noncopyable (const noncopyable &)=delete
| 禁止复制构造。 更多...
| noncopyable (noncopyable &&)=default
| 允许转移构造。 更多...
noncopyable & | operator= (const noncopyable &)=delete
| 禁止复制赋值。 更多...
noncopyable & | operator= (noncopyable &&)=default
| 允许转移赋值。 更多...
| noncopyable ()=default
| `protected` 构造：默认实现。 更多...
| ~noncopyable ()=default
| `protected` 析构：默认实现。 更多...

## 详细描述

### template<typename _type, typename _tPointer = _type*>
class YSLib::GLocalStaticCache< _type, _tPointer >

全局局部静态单态存储器。

前置条件
  `std::is_nothrow_constructible<_tPointer>::value` 。

注解
  存储使用以本类实例作为附加参数类型实例化的 ystdex::parameterize_static_object 模板函数提供。

警告
  非线程安全。

自从
  build 205

在文件 YStorage.hpp 第 149 行定义.

## 成员类型定义说明

## ◆ PointerType

template<typename _type , typename _tPointer = _type*>

using YSLib::GLocalStaticCache< _type, _tPointer >::PointerType = _tPointer

在文件 YStorage.hpp 第 155 行定义.

## 成员函数说明

## ◆ Check()

template<typename _type , typename _tPointer = _type*>

static void YSLib::GLocalStaticCache< _type, _tPointer >::Check | ( |  | ) |

inlinestaticprivate

检查是否已经初始化，否则构造新对象。

在文件 YStorage.hpp 第 173 行定义.

引用了 YSLib::GLocalStaticCache< _type, _tPointer >::GetStaticPtrRef().

被这些函数引用 YSLib::GLocalStaticCache< _type, _tPointer >::GetInstance().

函数调用图:
这是这个函数的调用关系图:

## ◆ DefDelCtor()

template<typename _type , typename _tPointer = _type*>

YSLib::GLocalStaticCache< _type, _tPointer >::DefDelCtor | ( | GLocalStaticCache< _type, _tPointer > |  | ) |

自从
  build 567

## ◆ GetInstance()

template<typename _type , typename _tPointer = _type*>

static _type& YSLib::GLocalStaticCache< _type, _tPointer >::GetInstance | ( |  | ) |

inlinestatic

取实例引用。

在文件 YStorage.hpp 第 200 行定义.

引用了 YSLib::GLocalStaticCache< _type, _tPointer >::Check().

函数调用图:

## ◆ GetStaticPtrRef() [1/2]

template<typename _type , typename _tPointer = _type*>

static PointerType& YSLib::GLocalStaticCache< _type, _tPointer >::GetStaticPtrRef | ( |  | ) |

inlinestaticprivate

取静态指针引用。

自从
  build 319

在文件 YStorage.hpp 第 163 行定义.

引用了 ystdex::parameterize_static_object().

被这些函数引用 YSLib::GLocalStaticCache< _type, _tPointer >::Check() , 以及 YSLib::GLocalStaticCache< _type, _tPointer >::Release().

函数调用图:
这是这个函数的调用关系图:

## ◆ GetStaticPtrRef() [2/2]

template<typename _type , typename _tPointer = _type*>

YSLib::GLocalStaticCache< _type, _tPointer >::GetStaticPtrRef | ( |  | ) | const &

inline

取指针。

自从
  build 567

在文件 YStorage.hpp 第 185 行定义.

## ◆ Release()

template<typename _type , typename _tPointer = _type*>

static void YSLib::GLocalStaticCache< _type, _tPointer >::Release | ( |  | ) |

inlinestatic

删除对象并置指针为空值。

自从
  build 319

在文件 YStorage.hpp 第 211 行定义.

引用了 YSLib::GLocalStaticCache< _type, _tPointer >::GetStaticPtrRef() , 以及 YSLib::reset().

函数调用图:

## 类成员变量说明

## ◆ PointerRaw

template<typename _type , typename _tPointer = _type*>

YSLib::GLocalStaticCache< _type, _tPointer >::PointerRaw

在文件 YStorage.hpp 第 185 行定义.

## ◆ PointerType

template<typename _type , typename _tPointer = _type*>

YSLib::GLocalStaticCache< _type, _tPointer >::PointerType

在文件 YStorage.hpp 第 185 行定义.

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

- YStorage.hpp