ConceptC++ Concept Web

Concept OutputIterator

concept OutputIterator<typename X, typename Value> : CopyConstructible {
  typename value_type = Value;
  typename reference = X::reference;
 
  requires SameType,
           Assignable;
 
  typename postincrement_result;
  requires Dereferenceable,
           Convertibleconst X&>,
           Assignable<Dereferenceable::reference,
                      value_type>;
 
  reference operator*(X&);
  X& operator++(X& r);
  postincrement_result operator++(X& r, int);
};

Where Defined

#include <iterator>

Description

The OutputIterator concept describes an output iterator that may permit output of many different value types.

X& operator++(X& r);

Postcondition: &r == &++r.

postincrement_result operator++(X& r, int); 

Effects: equivalent to

{ X tmp = r; 
++r; 
return tmp; }