Search:
Reference
<iterator>
move_iterator
operator-
public member function
<iterator>
std::
move_iterator
::operator-
move_iterator operator- (difference_type n) const;
Subtraction operator
Returns a
move iterator
pointing to the element located
n
positions before the element the iterator currently points to.
Internally, the function reflects the operation onto the
base iterator
and returns a
move iterator
constructed with the resulting value.
Note that this function requires the
base iterator
to be a
random-access iterator
.
This operator is also overloaded as a non-member function to return the difference of subtracting iterators: see
operator-
).
Parameters
n
Number of elements to offset backwards.
Member type
difference_type
is an alias of the
base iterator
's own difference type.
Return value
A
move iterator
pointing to the element
n
positions before the currently pointed one.
Data races
The object is accessed.
The iterator returned can be used to access or modify elements.
Exception safety
Provides the same level of guarantee as the operations internally applied to the
base iterator
.
See also
move_iterator::operator+
Addition operator
(public member function )
move_iterator::operator--
Decrease iterator position
(public member function )
move_iterator::operator-=
Decrease iterator
(public member function )
C++
Information
Tutorials
Reference
Articles
Forum
Reference
C library:
<cassert> (assert.h)
<cctype> (ctype.h)
<cerrno> (errno.h)
<cfenv> (fenv.h)
<cfloat> (float.h)
<cinttypes> (inttypes.h)
<ciso646> (iso646.h)
<climits> (limits.h)
<clocale> (locale.h)
<cmath> (math.h)
<csetjmp> (setjmp.h)
<csignal> (signal.h)
<cstdarg> (stdarg.h)
<cstdbool> (stdbool.h)
<cstddef> (stddef.h)
<cstdint> (stdint.h)
<cstdio> (stdio.h)
<cstdlib> (stdlib.h)
<cstring> (string.h)
<ctgmath> (tgmath.h)
<ctime> (time.h)
<cuchar> (uchar.h)
<cwchar> (wchar.h)
<cwctype> (wctype.h)
Containers:
<array>
<deque>
<forward_list>
<list>
<map>
<queue>
<set>
<stack>
<unordered_map>
<unordered_set>
<vector>
Input/Output:
<fstream>
<iomanip>
<ios>
<iosfwd>
<iostream>
<istream>
<ostream>
<sstream>
<streambuf>
Multi-threading:
<atomic>
<condition_variable>
<future>
<mutex>
<thread>
Other:
<algorithm>
<bitset>
<chrono>
<codecvt>
<complex>
<exception>
<functional>
<initializer_list>
<iterator>
<limits>
<locale>
<memory>
<new>
<numeric>
<random>
<ratio>
<regex>
<stdexcept>
<string>
<system_error>
<tuple>
<typeindex>
<typeinfo>
<type_traits>
<utility>
<valarray>
<iterator>
iterator
iterator_traits
functions:
advance
back_inserter
begin
distance
end
front_inserter
inserter
make_move_iterator
next
prev
iterator categories:
bidirectional_iterator_tag
forward_iterator_tag
input_iterator_tag
output_iterator_tag
random_access_iterator_tag
predefined iterators:
back_insert_iterator
front_insert_iterator
insert_iterator
istreambuf_iterator
istream_iterator
move_iterator
ostreambuf_iterator
ostream_iterator
reverse_iterator
move_iterator
move_iterator::move_iterator
member functions:
move_iterator::base
move_iterator::operator*
move_iterator::operator+
move_iterator::operator++
move_iterator::operator+=
move_iterator::operator-
move_iterator::operator--
move_iterator::operator-=
move_iterator::operator->
move_iterator::operator=
move_iterator::operator[]
non-member overloads:
relational operators (move_iterator)
operator- (move_iterator)
operator+ (move_iterator)