Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      std::output_iterator

      From cppreference.com
      <cpp‎ |iterator
       
       
      Iterator library
      Iterator concepts
      output_iterator
      (C++20)

      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 I,class T>

          concept output_iterator=
             std::input_or_output_iterator<I>&&
             std::indirectly_writable<I, T>&&
              requires(I i, T&& t){
                 *i++=std::forward<T>(t);/* not required to be equality-preserving */

             };
      (since C++20)

      Theoutput_iterator concept is a refinement ofinput_or_output_iterator, adding the requirement that it can be used to write values of type and value category encoded byT (viaindirectly_writable).equality_comparable is not required.

      Contents

      [edit]Semantic requirements

      LetE be an expression such thatdecltype((E)) isT, andi be a dereferenceable object of typeI.std::output_iterator<I, T> is modeled only if all the concepts it subsumes are modeled, and*i++= E; has effects equivalent to*i= E;++i;.

      [edit]Equality preservation

      Expressions declared inrequires expressions of the standard library concepts are required to beequality-preserving (except where stated otherwise).

      [edit]Notes

      Unlike theLegacyOutputIterator requirements, theoutput_iterator concept does not require that the iterator category tag be defined.

      Algorithms on output iterators should be single pass.

      [edit]See also

      specifies that objects of a type can be incremented and dereferenced
      (concept)[edit]
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/iterator/output_iterator&oldid=159950"

      [8]ページ先頭

      ©2009-2025 Movatter.jp