title: Pair of begin and end iterator -- does it have a name?
body: <p>In C++, is there a <code>struct</code> (or class) defined representing a pair of iterators -- one the beginning and one the ending iterator? What's best practice to represent that? <code>std::pair</code>? I know that I can easily build that myself, but I would like to follow common practice.</p>
  
  <p>I search for the following:</p>
  
  <pre><code>template&lt;class It&gt;
  struct XXX {
  private:
     It b;
     It e;
  public:
     It begin () const { return b; }
     It end () const { return e; }
     // ...
  };
  </code></pre>