Files
2025-10-25 03:02:53 +03:00

53 lines
1.3 KiB
Markdown

[reverse.iter.elem]
# 24 Iterators library [[iterators]](./#iterators)
## 24.5 Iterator adaptors [[predef.iterators]](predef.iterators#reverse.iter.elem)
### 24.5.1 Reverse iterators [[reverse.iterators]](reverse.iterators#reverse.iter.elem)
#### 24.5.1.6 Element access [reverse.iter.elem]
[🔗](#lib:operator*,reverse_iterator)
`constexpr reference operator*() const;
`
[1](#1)
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/iterators.tex#L3389)
*Effects*: As if by:Iterator tmp = current;return *--tmp;
[🔗](#lib:operator-%3e,reverse_iterator)
`constexpr pointer operator->() const
requires (is_pointer_v<Iterator> ||
requires(const Iterator i) { i.operator->(); });
`
[2](#2)
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/iterators.tex#L3406)
*Effects*:
- [(2.1)](#2.1)
If Iterator is a pointer type, equivalent to:return prev(current);
- [(2.2)](#2.2)
Otherwise, equivalent to:return prev(current).operator->();
[🔗](#lib:operator%5b%5d,reverse_iterator)
`constexpr unspecified operator[](difference_type n) const;
`
[3](#3)
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/iterators.tex#L3423)
*Returns*: current[-n - 1][.](#3.sentence-1)