Boost logo

Boost :

From: David Abrahams (abrahams_at_[hidden])
Date: 2001-03-07 07:52:30


----- Original Message -----
From: "Peter Dimov" <pdimov_at_[hidden]>

> In the case where Base=int, _none_ of the defaults can be legally formed,
so
> we're back to providing a full-blown my_iterator_traits anyway, no?
>
> What am I missing this time? :-) Perhaps there is a case where some of the
> defaults are legal and the rest is not?

Yes. Base = int, Value = int
default reference= int&
default pointer = int*
default difference_type = iterator_traits<int>::difference_type, so it must
be specified

(see counting_iterator.hpp)

But, sometimes reference = value_type, though pointer can be deduced. There
is simply no single order for parameters which always lets you use the
default. Sometimes the expression for the default is quite complicated.

-Dave


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk