Boost logo

Boost Users :

From: rogeeff (rogeeff_at_[hidden])
Date: 2002-02-19 13:17:54

--- In Boost-Users_at_y..., Jeremy Siek <jsiek_at_c...> wrote:
> On Tue, 19 Feb 2002, Peter Dimov wrote:
> 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
> 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
> permutation_iterator_policies and explicitly fill in all the
parameters of
> iterator_adaptor.
> Cheers,
> Jeremy
> --------------------------------------------------------------------

>  Jeremy Siek                
>  Ph.D. Student, Indiana Univ. B'ton   email: jsiek_at_o...
>  C++ Booster (   office phone: (812) 855-3608
> --------------------------------------------------------------------
It's a pain with ANY iterator adaptors over plain pointer. MSVC can't 
deduce T from T*. And there is no workaround. You only choice is to 
explicetly say to adaptor what a retulting value type is.

Boost-users list run by williamkempf at, kalb at, bjorn.karlsson at, gregod at, wekempf at