YSTest: ystdex::any_bidirectional_iterator< _type, _tDifference, _tPointer, _tReference > 模板类 参考

YSTest PreAlpha_b400_20130424 The YSLib Test Project

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

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

全部 类 命名空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义 组 页
Public 类型 | Public 成员函数 | 所有成员列表
ystdex::any_bidirectional_iterator< _type, _tDifference, _tPointer, _tReference > 模板类 参考
Iterator Adaptors

动态泛型双向迭代器。 更多...

`#include <any_iterator.hpp>`

类 ystdex::any_bidirectional_iterator< _type, _tDifference, _tPointer, _tReference > 继承关系图:
[图例]
ystdex::any_bidirectional_iterator< _type, _tDifference, _tPointer, _tReference > 的协作图:
[图例]

## Public 类型

typedef std::bidirectional_iterator_tag | iterator_category
typedef _tPointer | pointer
typedef _tReference | reference
Public 类型 继承自 ystdex::any_forward_iterator< _type, _tDifference, _tPointer, _tReference >
typedef std::forward_iterator_tag | iterator_category
typedef _tPointer | pointer
typedef _tReference | reference
Public 类型 继承自 ystdex::any_input_iterator< _type, _tDifference, _tPointer, _tReference >
typedef _tPointer | pointer
typedef _tReference | reference

## Public 成员函数

| any_bidirectional_iterator ()=default
template<typename _tIterator >
| any_bidirectional_iterator (_tIterator &&i)
| any_bidirectional_iterator (const any_bidirectional_iterator &)=default
| any_bidirectional_iterator (any_bidirectional_iterator &&)=default
any_bidirectional_iterator & | operator++ ()
any_bidirectional_iterator | operator++ (int)
any_bidirectional_iterator & | operator-- ()
any_bidirectional_iterator | operator-- (int)
Public 成员函数 继承自 ystdex::any_forward_iterator< _type, _tDifference, _tPointer, _tReference >
| any_forward_iterator ()=default
template<typename _tIterator >
| any_forward_iterator (_tIterator &&i)
| any_forward_iterator (const any_forward_iterator &)=default
| any_forward_iterator (any_forward_iterator &&)=default
any_forward_iterator & | operator++ ()
any_forward_iterator | operator++ (int)
Public 成员函数 继承自 ystdex::any_input_iterator< _type, _tDifference, _tPointer, _tReference >
| any_input_iterator ()=default
template<typename _tIterator >
| any_input_iterator (_tIterator &&i)
| 构造：使用现有迭代器。
| any_input_iterator (const any_input_iterator &)=default
| any_input_iterator (any_input_iterator &&)=default
reference | operator* () const
pointer | operator-> () const
any_input_iterator & | operator++ ()
any | get () const
bool | check_undereferenceable () const
bool | equals (const any_input_iterator &i) const

## 额外继承的成员函数

Protected 成员函数 继承自 ystdex::any
| any () ynoexcept
| any (const any &)
| any (any &&a) ynoexcept
| ~any ()
template<typename _type >
any & | operator= (const _type &x)
any & | operator= (const any &a)
| 复制赋值：使用复制和交换。
any & | operator= (any &&a) ynoexcept
| 转移赋值：使用复制和交换。
bool | operator! () const ynoexcept
| operator bool () const ynoexcept
bool | empty () const ynoexcept
void * | get () const ynoexcept
any_ops::holder * | get_holder () const
void | clear () ynoexcept
void | swap (any &a) ynoexcept
const std::type_info & | type () const ynoexcept
template<typename _type , typename = typename std::enable_if<!is_same<_type&, any&>::value, int>::type>
| any (_type &&x)
template<typename _type >
| any (std::reference_wrapper< _type > x)
template<typename _tHolder >
| any (any_ops::holder_tag, std::unique_ptr< _tHolder > p)
| 构造：使用指定持有者。
template<typename _type >
| any (_type &&x, any_ops::holder_tag)
template<typename _type >
_type * | target () ynoexcept
template<typename _type >
const _type * | target () const ynoexcept

## 详细描述

### template<typename _type, typename _tDifference = ptrdiff_t, typename _tPointer = _type*, typename _tReference = _type&>
class ystdex::any_bidirectional_iterator< _type, _tDifference, _tPointer, _tReference >

动态泛型双向迭代器。

在文件 any_iterator.hpp 第 393 行定义.

## 成员类型定义说明

template<typename _type , typename _tDifference = ptrdiff_t, typename _tPointer = _type*, typename _tReference = _type&>

typedef std::bidirectional_iterator_tag ystdex::any_bidirectional_iterator< _type, _tDifference, _tPointer, _tReference >::iterator_category

在文件 any_iterator.hpp 第 397 行定义.

template<typename _type , typename _tDifference = ptrdiff_t, typename _tPointer = _type*, typename _tReference = _type&>

typedef _tPointer ystdex::any_bidirectional_iterator< _type, _tDifference, _tPointer, _tReference >::pointer

在文件 any_iterator.hpp 第 398 行定义.

template<typename _type , typename _tDifference = ptrdiff_t, typename _tPointer = _type*, typename _tReference = _type&>

typedef _tReference ystdex::any_bidirectional_iterator< _type, _tDifference, _tPointer, _tReference >::reference

在文件 any_iterator.hpp 第 399 行定义.

## 构造及析构函数说明

template<typename _type , typename _tDifference = ptrdiff_t, typename _tPointer = _type*, typename _tReference = _type&>

ystdex::any_bidirectional_iterator< _type, _tDifference, _tPointer, _tReference >::any_bidirectional_iterator | ( |  | ) |

default

template<typename _type , typename _tDifference = ptrdiff_t, typename _tPointer = _type*, typename _tReference = _type&>
template<typename _tIterator >

ystdex::any_bidirectional_iterator< _type, _tDifference, _tPointer, _tReference >::any_bidirectional_iterator | ( | _tIterator && | i | ) |

inline

在文件 any_iterator.hpp 第 403 行定义.

template<typename _type , typename _tDifference = ptrdiff_t, typename _tPointer = _type*, typename _tReference = _type&>

ystdex::any_bidirectional_iterator< _type, _tDifference, _tPointer, _tReference >::any_bidirectional_iterator | ( | const any_bidirectional_iterator< _type, _tDifference, _tPointer, _tReference > & |  | ) |

default

template<typename _type , typename _tDifference = ptrdiff_t, typename _tPointer = _type*, typename _tReference = _type&>

ystdex::any_bidirectional_iterator< _type, _tDifference, _tPointer, _tReference >::any_bidirectional_iterator | ( | any_bidirectional_iterator< _type, _tDifference, _tPointer, _tReference > && |  | ) |

default

## 成员函数说明

template<typename _type , typename _tDifference = ptrdiff_t, typename _tPointer = _type*, typename _tReference = _type&>

any_bidirectional_iterator& ystdex::any_bidirectional_iterator< _type, _tDifference, _tPointer, _tReference >::operator++ | ( |  | ) |

inline

在文件 any_iterator.hpp 第 410 行定义.

参考 ystdex::any_forward_iterator< _type, _tDifference, _tPointer, _tReference >::operator++().

函数调用图:
template<typename _type , typename _tDifference = ptrdiff_t, typename _tPointer = _type*, typename _tReference = _type&>

any_bidirectional_iterator ystdex::any_bidirectional_iterator< _type, _tDifference, _tPointer, _tReference >::operator++ | ( | int |  | ) |

inline

在文件 any_iterator.hpp 第 415 行定义.

template<typename _type , typename _tDifference = ptrdiff_t, typename _tPointer = _type*, typename _tReference = _type&>

any_bidirectional_iterator& ystdex::any_bidirectional_iterator< _type, _tDifference, _tPointer, _tReference >::operator-- | ( |  | ) |

inline

在文件 any_iterator.hpp 第 418 行定义.

参考 ystdex::any_ops::decrease,ystdex::any::manager,ystdex::any::storage , 以及 yassume.

template<typename _type , typename _tDifference = ptrdiff_t, typename _tPointer = _type*, typename _tReference = _type&>

any_bidirectional_iterator ystdex::any_bidirectional_iterator< _type, _tDifference, _tPointer, _tReference >::operator-- | ( | int |  | ) |

inline

在文件 any_iterator.hpp 第 425 行定义.

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

- any_iterator.hpp