• Class / Function / Type

      std::
    • Header file

      <>
    • Other / All

    最終更新日時(UTC):
    が更新

    履歴 編集

    function
    <iterator>

    std::basic_const_iterator::operator++

    constexpr basic_const_iterator& operator++();   // (1)
    
    constexpr void operator++(int);                 // (2)
    constexpr basic_const_iterator operator++(int) requires forward_iterator<Iterator>; // (3)
    

    概要

    イテレータをインクリメントする。

    • (1) : 前置インクリメント
    • (2)(3) : 後置インクリメント

    効果

    ラップするイテレータをcurrent_というメンバに保持するとして

    • (1) : 以下と等価

      ++current_;
      return *this;
      

    • (2) : ++current_;

    • (3) : 以下と等価

      auto tmp = *this;
      ++*this;
      return tmp;
      

    #include <iostream>
    #include <iterator>
    
    int main() {
      std::vector vec = {1, 2, 3, 4, 5};
    
      std::basic_const_iterator cit = vec.begin();
    
      ++cit;
    
      std::cout << *cit << '\n';
    
      cit++;
    
      std::cout << *cit << '\n';
    }
    

    出力

    2
    3
    

    バージョン

    言語

    • C++23

    処理系

    参照