
7 Oct
2012
7 Oct
'12
7:58 p.m.
On Sun, Oct 7, 2012 at 10:33 AM, Matt Calabrese <rivorus@gmail.com> wrote:
With a language-level concepts feature, you can get concept-based overloading to work entirely in the expected manner with no need for iterator categories, no need for tag dispatching, and the implementation works fine in the presence of user-provided concepts that refine standard iterator concepts.
BTW, is this true also for N3351 concepts or just for C++0x concepts? Because iterator tags are still in N3351 and they are even made part of the specification (so they're not just an implementation detail/workaround): concept InputIterator<WeakInputIterator I> = EqualityComparable<I> && Derived<IteratorCategory<I>, input_iterator_tag>; Thanks, --Lorenzo