Boost logo

Boost :

From: John Maddock (john_at_[hidden])
Date: 2007-02-23 08:51:19


Thorsten Ottosen wrote:
> Here's a list of things I feel strongly about changing (see below for
> info):
>
> - relation should have the same members as std::pair

Maybe, I quite like the systematic use of left and right personally.

> - types should lie with members, so
>
> map::left_type::iterator i = m.left.begin()
>
> instead of
>
> map::left_iterator i = m.left.begin()

Isn't that true now? Or rather that both are possible currently?

My only comment is that it's a lot easier to write:

typedef typename map::left_iterator it_type;

than:

typedef typename map::left_type left_type;
typedef typename left_type::iterator it_type;

So I would go with both.

> - operator()[] seems way to complicatedly specified and does not
> follow
> the promise of mirroring STL. Keep the mutable operator()[] and then
> add
>
> value& map.at( const key& );
> const value& map.at( const key& ) const;
>
> which throws on lookup failure.

I found that section confusing as well, anything simpler would be welcome.

John.


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