|
| constexpr | vector_iterator (pointer ptr, const container_type *vec) noexcept |
| | 构造函数
|
| constexpr reference | dereference () const noexcept |
| | 解引用操作
|
|
constexpr void | increment () noexcept |
| | 递增操作
|
|
constexpr void | decrement () noexcept |
| | 递减操作
|
| constexpr void | advance (difference_type off) noexcept |
| | 前进操作
|
| constexpr difference_type | distance_to (const vector_iterator &other) const noexcept |
| | 计算距离操作
|
| constexpr reference | operator[] (difference_type off) noexcept |
| | 下标访问操作符
|
| constexpr bool | equal_to (const vector_iterator &rhs) const noexcept |
| | 相等比较
|
| constexpr bool | less_than (const vector_iterator &rhs) const noexcept |
| | 小于比较
|
| constexpr pointer | base () const noexcept |
| | 获取底层指针
|
| constexpr const container_type * | container () const noexcept |
| | 获取关联容器
|
| constexpr decltype(auto) | operator* () const noexcept |
| | 解引用操作符
|
| constexpr decltype(auto) | operator-> () const noexcept |
| | 成员访问操作符
|
| constexpr vector_iterator< IsConst, Vector > & | operator++ () noexcept |
| | 前置递增操作符
|
| constexpr vector_iterator< IsConst, Vector > & | operator-- () noexcept |
| | 前置递减操作符
|
| constexpr vector_iterator< IsConst, Vector > & | operator+= (Distance n) noexcept |
| | 复合加法赋值操作符
|
| constexpr vector_iterator< IsConst, Vector > | operator+ (Distance n) const noexcept |
| | 加法操作符
|
| constexpr vector_iterator< IsConst, Vector > & | operator-= (Distance n) noexcept |
| | 复合减法赋值操作符
|
| constexpr enable_if_t<!is_same_v< T, vector_iterator< IsConst, Vector > >, vector_iterator< IsConst, Vector > > | operator- (const T n) const noexcept |
| | 减法操作符
|
| constexpr bool | operator== (const vector_iterator< IsConst, Vector > &rhs) const noexcept(noexcept(derived().equal_to(rhs))) |
| | 相等比较运算符
|
| constexpr bool | operator!= (const vector_iterator< IsConst, Vector > &rhs) const noexcept(noexcept(!(derived().equal_to(rhs)))) |
| | 不等比较运算符
|
| constexpr bool | operator< (const vector_iterator< IsConst, Vector > &rhs) const noexcept(noexcept(derived().less_than(rhs))) |
| | 小于比较运算符
|
| constexpr bool | operator> (const vector_iterator< IsConst, Vector > &rhs) const noexcept(noexcept(rhs.less_than(derived()))) |
| | 大于比较运算符
|
| constexpr bool | operator<= (const vector_iterator< IsConst, Vector > &rhs) const noexcept(noexcept(!(rhs.less_than(derived())))) |
| | 小于等于比较运算符
|
| constexpr bool | operator>= (const vector_iterator< IsConst, Vector > &rhs) const noexcept(noexcept(!(derived().less_than(rhs)))) |
| | 大于等于比较运算符
|
template<bool IsConst, typename Vector>
struct vector_iterator< IsConst, Vector >
向量迭代器
- 模板参数
-
| IsConst | 是否常量迭代器 |
| Vector | 向量类型 |
为vector提供迭代器支持,包含边界检查和调试验证。
在文件 vector.hpp 第 32 行定义.