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

链表迭代器 更多...

#include <list.hpp>

类 list_iterator< IsConst, List > 继承关系图:
[图例]

Public 类型

using container_type = List
 容器类型
using value_type = typename container_type::value_type
 值类型
using size_type = typename container_type::size_type
 大小类型
using difference_type = typename container_type::difference_type
 差值类型
using iterator_category = bidirectional_iterator_tag
 迭代器类别
using reference
 引用类型
using pointer
 指针类型

Public 成员函数

 list_iterator (node_type *ptr, const container_type *list) noexcept
 构造函数
NEFORCE_NODISCARD reference dereference () const noexcept
 解引用操作实现
void increment () noexcept
 递增操作
void decrement () noexcept
 递减操作
NEFORCE_NODISCARD bool equal (const list_iterator &rhs) const noexcept
 相等比较
NEFORCE_NODISCARD node_type * base () const noexcept
 获取底层节点指针
NEFORCE_NODISCARD const container_typecontainer () const noexcept
 获取关联容器
Public 成员函数 继承自 iiterator< list_iterator< IsConst, List > >
NEFORCE_NODISCARD constexpr decltype(auto) operator* () const noexcept
 解引用操作符
NEFORCE_NODISCARD constexpr decltype(auto) operator-> () const noexcept
 成员访问操作符
constexpr list_iterator< IsConst, List > & operator++ () noexcept
 前置递增操作符
constexpr list_iterator< IsConst, List > & operator-- () noexcept
 前置递减操作符
constexpr list_iterator< IsConst, List > & operator+= (Distance n) noexcept
 复合加法赋值操作符
NEFORCE_NODISCARD constexpr list_iterator< IsConst, List > operator+ (Distance n) const noexcept
 加法操作符
constexpr list_iterator< IsConst, List > & operator-= (Distance n) noexcept
 复合减法赋值操作符
NEFORCE_NODISCARD constexpr enable_if_t<!is_same_v< T, list_iterator< IsConst, List > >, list_iterator< IsConst, List > > operator- (const T n) const noexcept
 减法操作符
NEFORCE_NODISCARD constexpr bool operator== (const list_iterator< IsConst, List > &rhs) const noexcept
 相等比较操作符
NEFORCE_NODISCARD constexpr bool operator!= (const list_iterator< IsConst, List > &rhs) const noexcept
 不等比较操作符
NEFORCE_NODISCARD constexpr bool operator< (const list_iterator< IsConst, List > &rhs) const noexcept
 小于比较操作符
NEFORCE_NODISCARD constexpr bool operator> (const list_iterator< IsConst, List > &rhs) const noexcept
 大于比较操作符
NEFORCE_NODISCARD constexpr bool operator<= (const list_iterator< IsConst, List > &rhs) const noexcept
 小于等于比较操作符
NEFORCE_NODISCARD constexpr bool operator>= (const list_iterator< IsConst, List > &rhs) const noexcept
 大于等于比较操作符

详细描述

template<bool IsConst, typename List>
struct list_iterator< IsConst, List >

链表迭代器

模板参数
IsConst是否常量迭代器
List链表类型

为list提供双向迭代器支持,包含边界检查和调试验证。

在文件 list.hpp68 行定义.

构造及析构函数说明

◆ list_iterator()

template<bool IsConst, typename List>
list_iterator< IsConst, List >::list_iterator ( node_type * ptr,
const container_type * list )
inlinenoexcept

构造函数

参数
ptr初始节点指针
list关联容器指针

在文件 list.hpp100 行定义.

成员函数说明

◆ base()

template<bool IsConst, typename List>
NEFORCE_NODISCARD node_type * list_iterator< IsConst, List >::base ( ) const
inlinenoexcept

◆ container()

template<bool IsConst, typename List>
NEFORCE_NODISCARD const container_type * list_iterator< IsConst, List >::container ( ) const
inlinenoexcept

获取关联容器

返回
关联容器指针

在文件 list.hpp152 行定义.

◆ dereference()

template<bool IsConst, typename List>
NEFORCE_NODISCARD reference list_iterator< IsConst, List >::dereference ( ) const
inlinenoexcept

解引用操作实现

返回
当前节点的数据引用

在文件 list.hpp108 行定义.

◆ equal()

template<bool IsConst, typename List>
NEFORCE_NODISCARD bool list_iterator< IsConst, List >::equal ( const list_iterator< IsConst, List > & rhs) const
inlinenoexcept

相等比较

参数
rhs右侧迭代器
返回
是否指向同一节点

在文件 list.hpp137 行定义.


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