19 Feb
2002
19 Feb
'02
3:31 p.m.
pdimov> pdimov> A possible cause of this problem is that vector iterators are plain pointers pdimov> in MSVC 6, and iterator_traits doesn't handle pointers on this compiler (no pdimov> partial specialization.)
That sounds right, in which case, the workaround is to avoid using the template parameter defaults of iterator_adaptor. This can be done by replacing the use of projection_iterator_generator and make_permutation_iterator() with a direct use of iterator_adaptor and permutation_iterator_policies and explicitly fill in all the parameters of iterator_adaptor.
Thanks, I'll look into directly using iterator adaptor. You might note the issue with MSVC vector in the documentation for permutation_iterator. Jeff