Boost logo

Boost :

From: Eric Niebler (eric_at_[hidden])
Date: 2008-02-06 11:34:35


Thorsten Ottosen wrote:
>
> Ok, but let me make the question more specific: why would you ever pass
> a container by value to push_back()?

Of course you wouldn't, but the first argument to push_back() may not,
in fact, be a container. It may be an expression template that evaluates
to a container.

I could consider making push_back() "smart" and check whether its first
argument is an expression template, or a terminal, or what, and assume
any type it doesn't know about is a container that should be stored by
reference, but this makes me uncomfortable. Now push_back() is special,
and special cases makes things harder to learn.

-- 
Eric Niebler
Boost Consulting
www.boost-consulting.com

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