53 lines
1.3 KiB
Markdown
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)
|