From: Yitzhak Sapir (yitzhaks_at_[hidden])
Date: 2002-10-14 10:24:27
On 14 Oct 2002, David Abrahams wrote:
> This is really about iterators, not iterator adaptors or
> containers. Keep your eye on the bouncing iterator. Look at Table 75
> (Bidirectional Iterator Requirements) in the standard. The first line
> tells you everything you need to know:
> operational assertion/note
> expression return type semantics pre/post-condition
> --r X& pre: there exists s such
> that r == ++s.
> post: s is dereferenceable.
Shouldn't that say: r is dereferenceable?
Anyway, all these assertions seem to require that, if a sequence is not
empty, then --iterator_type(end()) return a valid iterator pointing before
the end. So I can't use end-marker iterators. Good to know. Thanks.
> --(++r) == r.
> --r == --s implies r == s.
> &r == &--r.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk