$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: boost (boost_at_[hidden])
Date: 2001-12-06 17:15:29
Salut,
On Thursday 06 December 2001 12:26, Toon Knapen wrote:
> > What about the following idea:
> > -> resize( n1, n2) garanties "to hold size1 rows of size2 elements".
> > -> reserve(n3, n4) garanties that as long n3>=n1, n4 >=n2 no allocations
> > in resize(n1,n2) are performed.
>
> I would say that the condition is that n3*n4 >= n1*n2.
>
> > if n3<n1 or n4 < n2 the matrix is allowed to
> > shrink to the reserved size if requested in a subsequent resize(..) in
> > order to minimize wasted memory.
> > But this would lead to the notion of a minimal_capacity().
>
> I don't know if this is a good idea. First it slightly differs from
>
> the vector.reserve call and slight differences from a standard always
>
> lead to subtle bugs. Secondly, if you really want to 'shrink' the matrix,
>
> copy it to another with the desired size. This would need to be done
> internally also.
Last night I thought there's some possibility for optimizations, but you're
right, it's just confusing.
Best wishes,
Peter