NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
载入中...
搜索中...
未找到
iiterator< Iterator > 模板结构体 参考

迭代器接口模板 更多...

#include <iiterator.hpp>

类 iiterator< Iterator > 继承关系图:
[图例]

Public 成员函数

NEFORCE_NODISCARD constexpr decltype(auto) operator* () const noexcept
 解引用操作符
NEFORCE_NODISCARD constexpr decltype(auto) operator-> () const noexcept
 成员访问操作符
constexpr Iterator & operator++ () noexcept
 前置递增操作符
constexpr Iterator operator++ (int) noexcept
 后置递增操作符
constexpr Iterator & operator-- () noexcept
 前置递减操作符
constexpr Iterator operator-- (int) noexcept
 后置递减操作符
template<typename Distance>
constexpr Iterator & operator+= (Distance n) noexcept
 复合加法赋值操作符
template<typename Distance>
NEFORCE_NODISCARD constexpr Iterator operator+ (Distance n) const noexcept
 加法操作符
template<typename Distance>
constexpr Iterator & operator-= (Distance n) noexcept
 复合减法赋值操作符
template<typename T>
NEFORCE_NODISCARD constexpr enable_if_t<!is_same_v< T, Iterator >, Iterator > operator- (const T n) const noexcept
 减法操作符
NEFORCE_NODISCARD constexpr decltype(auto) operator- (const Iterator &other) const noexcept
 减法操作符
NEFORCE_NODISCARD constexpr bool operator== (const Iterator &rhs) const noexcept
 相等比较操作符
NEFORCE_NODISCARD constexpr bool operator!= (const Iterator &rhs) const noexcept
 不等比较操作符
NEFORCE_NODISCARD constexpr bool operator< (const Iterator &rhs) const noexcept
 小于比较操作符
NEFORCE_NODISCARD constexpr bool operator> (const Iterator &rhs) const noexcept
 大于比较操作符
NEFORCE_NODISCARD constexpr bool operator<= (const Iterator &rhs) const noexcept
 小于等于比较操作符
NEFORCE_NODISCARD constexpr bool operator>= (const Iterator &rhs) const noexcept
 大于等于比较操作符

详细描述

template<typename Iterator>
struct iiterator< Iterator >

迭代器接口模板

模板参数
Iterator派生迭代器类型

为迭代器类型提供完整的操作接口,包括解引用、递增、递减、算术运算和比较运算。 基于CRTP模式,要求派生类实现核心操作方法。

在文件 iiterator.hpp29 行定义.

成员函数说明

◆ operator!=()

template<typename Iterator>
NEFORCE_NODISCARD constexpr bool iiterator< Iterator >::operator!= ( const Iterator & rhs) const
inlineconstexprnoexcept

不等比较操作符

参数
rhs右侧迭代器
返回
如果迭代器不相等返回true,否则返回false

在文件 iiterator.hpp165 行定义.

◆ operator*()

template<typename Iterator>
NEFORCE_NODISCARD constexpr decltype(auto) iiterator< Iterator >::operator* ( ) const
inlineconstexprnoexcept

解引用操作符

返回
迭代器指向的元素引用或值

在文件 iiterator.hpp40 行定义.

◆ operator+()

template<typename Iterator>
template<typename Distance>
NEFORCE_NODISCARD constexpr Iterator iiterator< Iterator >::operator+ ( Distance n) const
inlineconstexprnoexcept

加法操作符

参数
n要前进的距离
返回
前进后的新迭代器

在文件 iiterator.hpp103 行定义.

◆ operator++() [1/2]

template<typename Iterator>
Iterator & iiterator< Iterator >::operator++ ( )
inlineconstexprnoexcept

前置递增操作符

返回
递增后的迭代器引用

在文件 iiterator.hpp52 行定义.

◆ operator++() [2/2]

template<typename Iterator>
Iterator iiterator< Iterator >::operator++ ( int )
inlineconstexprnoexcept

后置递增操作符

返回
递增前的迭代器副本

在文件 iiterator.hpp61 行定义.

◆ operator+=()

template<typename Iterator>
template<typename Distance>
Iterator & iiterator< Iterator >::operator+= ( Distance n)
inlineconstexprnoexcept

复合加法赋值操作符

参数
n要前进的距离
返回
前进后的迭代器引用

在文件 iiterator.hpp92 行定义.

◆ operator-() [1/2]

template<typename Iterator>
NEFORCE_NODISCARD constexpr decltype(auto) iiterator< Iterator >::operator- ( const Iterator & other) const
inlineconstexprnoexcept

减法操作符

参数
other另一个迭代器
返回
两个迭代器之间的距离

在文件 iiterator.hpp149 行定义.

◆ operator-() [2/2]

template<typename Iterator>
template<typename T>
NEFORCE_NODISCARD constexpr enable_if_t<!is_same_v< T, Iterator >, Iterator > iiterator< Iterator >::operator- ( const T n) const
inlineconstexprnoexcept

减法操作符

模板参数
T距离类型
参数
n要后退的距离
返回
后退后的新迭代器

在文件 iiterator.hpp138 行定义.

◆ operator--() [1/2]

template<typename Iterator>
Iterator & iiterator< Iterator >::operator-- ( )
inlineconstexprnoexcept

前置递减操作符

返回
递减后的迭代器引用

在文件 iiterator.hpp71 行定义.

◆ operator--() [2/2]

template<typename Iterator>
Iterator iiterator< Iterator >::operator-- ( int )
inlineconstexprnoexcept

后置递减操作符

返回
递减前的迭代器副本

在文件 iiterator.hpp80 行定义.

◆ operator-=()

template<typename Iterator>
template<typename Distance>
Iterator & iiterator< Iterator >::operator-= ( Distance n)
inlineconstexprnoexcept

复合减法赋值操作符

参数
n要后退的距离
返回
后退后的迭代器引用

在文件 iiterator.hpp126 行定义.

◆ operator->()

template<typename Iterator>
NEFORCE_NODISCARD constexpr decltype(auto) iiterator< Iterator >::operator-> ( ) const
inlineconstexprnoexcept

成员访问操作符

返回
指向元素的指针

在文件 iiterator.hpp46 行定义.

◆ operator<()

template<typename Iterator>
NEFORCE_NODISCARD constexpr bool iiterator< Iterator >::operator< ( const Iterator & rhs) const
inlineconstexprnoexcept

小于比较操作符

参数
rhs右侧迭代器
返回
如果当前迭代器在rhs之前返回true,否则返回false

在文件 iiterator.hpp172 行定义.

◆ operator<=()

template<typename Iterator>
NEFORCE_NODISCARD constexpr bool iiterator< Iterator >::operator<= ( const Iterator & rhs) const
inlineconstexprnoexcept

小于等于比较操作符

参数
rhs右侧迭代器
返回
如果当前迭代器不在rhs之后返回true,否则返回false

在文件 iiterator.hpp186 行定义.

◆ operator==()

template<typename Iterator>
NEFORCE_NODISCARD constexpr bool iiterator< Iterator >::operator== ( const Iterator & rhs) const
inlineconstexprnoexcept

相等比较操作符

参数
rhs右侧迭代器
返回
如果迭代器相等返回true,否则返回false

在文件 iiterator.hpp158 行定义.

◆ operator>()

template<typename Iterator>
NEFORCE_NODISCARD constexpr bool iiterator< Iterator >::operator> ( const Iterator & rhs) const
inlineconstexprnoexcept

大于比较操作符

参数
rhs右侧迭代器
返回
如果当前迭代器在rhs之后返回true,否则返回false

在文件 iiterator.hpp179 行定义.

◆ operator>=()

template<typename Iterator>
NEFORCE_NODISCARD constexpr bool iiterator< Iterator >::operator>= ( const Iterator & rhs) const
inlineconstexprnoexcept

大于等于比较操作符

参数
rhs右侧迭代器
返回
如果当前迭代器不在rhs之前返回true,否则返回false

在文件 iiterator.hpp193 行定义.


该结构体的文档由以下文件生成: