
27 Oct
2008
27 Oct
'08
3:12 a.m.
OK, BOOST_FOREACH aside, iterating over a range returned as a pair of iterators can be painful and ugly: vertex_iterator pv, ve; tie(pv, ve) = vertices(g); // unpack the pair returned by vertices for (; pv != pe; ++pv) { ... } However, we can make it much nicer, e.g.: for (vertex_iterator pv,ve = xxx(pv,vertices(g)); pv != ve; ++pv) { ... } My only problem is how to spell xxx. The attached proof-of-concept uses operator%, but I don't feel particularly good about that choice either. Ideas? --- -- Dave Abrahams BoostPro Computing http://www.boostpro.com