title: Is There an Example of an Iterator Which Wouldn't use ptrdiff_t as its difference_type?
body: <p>I see that <code>iterator_traits</code> always defines a <code>difference_type</code>: <a href="https://en.cppreference.com/w/cpp/iterator/iterator_traits#Member_types" rel="noreferrer">https://en.cppreference.com/w/cpp/iterator/iterator_traits#Member_types</a></p>
  
  <p>I'm just wondering why, wouldn't that be <code>ptrdiff_t</code> for every type? Is there an example of an iterator which doesn't use <code>ptrdiff_t</code>? And if not why isn't <code>difference_type</code> eliminated from <code>iterator_traits</code> and <code>ptrdiff_t</code> used everywhere?</p>