Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      operator+(std::reverse_iterator)

      From cppreference.com
      <cpp‎ |iterator‎ |reverse iterator
       
       
      Iterator library
      Iterator concepts
      Iterator primitives
      Algorithm concepts and utilities
      Indirect callable concepts
      Common algorithm requirements
      (C++20)
      (C++20)
      (C++20)
      Utilities
      (C++20)
      Iterator adaptors
      Range access
      (C++11)(C++14)
      (C++14)(C++14)  
      (C++11)(C++14)
      (C++14)(C++14)  
      (C++17)(C++20)
      (C++17)
      (C++17)
       
       
      Defined in header<iterator>
      template<class Iter>

      reverse_iterator<Iter> operator+
         (typename reverse_iterator<Iter>::difference_type n,

           const reverse_iterator<Iter>& it);
      (constexpr since C++17)
      (until C++23)
      template<class Iter>

      constexpr reverse_iterator<Iter> operator+

         (std::iter_difference_t<Iter> n,const reverse_iterator<Iter>& it);
      (since C++23)

      Returns the iteratorit incremented byn. In fact, the underlying iterator is decremented byn.

      Contents

      [edit]Parameters

      n - the number of positions to increment the iterator
      it - the iterator adaptor to increment

      [edit]Return value

      reverse_iterator<Iter>(it.base()- n)

      [edit]Example

      Run this code
      #include <iostream>#include <iterator>#include <list>#include <vector> int main(){{std::vector v{0,1,2,3};std::reverse_iterator<std::vector<int>::iterator>            ri1{std::reverse_iterator{v.rbegin()}};std::cout<<*ri1<<' ';// 3std::reverse_iterator<std::vector<int>::iterator> ri2{2+ ri1};std::cout<<*ri2<<' ';// 1} {std::list l{5,6,7,8};std::reverse_iterator<std::list<int>::iterator>            ri1{std::reverse_iterator{l.rbegin()}};std::cout<<*ri1<<'\n';// 8//  auto ri2{2 + ri1}; // Error: the underlying iterator does not//        model random access iterator}}

      Output:

      3 1 8

      [edit]See also

      advances or decrements thereverse_iterator
      (public member function)[edit]
      computes the distance between two iterator adaptors
      (function template)[edit]
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/iterator/reverse_iterator/operator%2B&oldid=177512"

      [8]ページ先頭

      ©2009-2025 Movatter.jp