Boost logo

Boost :

From: Peter Dimov (pdimov_at_[hidden])
Date: 2001-08-21 06:20:32


From: "John Max Skaller" <skaller_at_[hidden]>
> Peter Dimov wrote:
>
> > the unnecessary initialization in this case is rarely a measurable
problem.
>
> Matrix r; // initialised ..
> ..
> r = x * y;

This is a general problem, it's not specific to std::vector.

Matrix r(x * y);

> is an O(n) + O(n^3) operation. The O(n) is irrelevant for large n.
> But not in the common case n=2, where it represents 20% of overall time.
> For addition, its 50%.

Big-O tells you nothing for small n. And sometimes for relatively large n.
memset() is incredibly fast nowadays. :-)

--
Peter Dimov
Multi Media Ltd.

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