Optimal time and space vector class

Don Waugaman dpw@baskerville.CS.Arizona.EDU
Fri Apr 14 10:33:00 GMT 2000


On Fri, Apr 14, 2000, Kevin Atkinson wrote:
> 
> On Fri, 14 Apr 2000, Nathan Myers wrote:
> 
> > On Thu, Apr 13, 2000 at 11:50:59PM -0700, Benjamin Kosnik wrote:
> > > 
> > > Thomas,
> > > 
> > > I'd like to take a look at this. Can you provide more information?
> > > 
> > > - how did you test it?
> > > - how does the current implementation compare?
> > > - what kind of space/speed differences are there?
> > 
> > Also
> > 
> >   - is it exception-safe, according to the Standard requirement?
> >   - does it use allocators properly?
> >   - does it conform to the amortized-constant allocation time requirement?
> >   - does it take advantage of the empty-base space optimization supported
> >       under -fnew-abi?
> > 
> 
> Also, does it still use a continious block of memory which is an unwritten
> requirement of vector which Stroustrup admits should have made it into the
> standard.  See http://www.deja.com/getdoc.xp?AN=354999401 for an offical
> usenet posting from him.

It's no longer an unwritten requirement - it's getting close to a full-scale
requirement.  See

< http://anubis.dkuug.dk/jtc1/sc22/wg21/docs/lwg-defects.html#69 >

Those defects which are resolved will eventually be issued as Addenda to the
Standard.  I think that the working group will still have to vote on
contiguous vectors, but it's almost certain to pass.

To the original poster, I have a question and a suggestion:  how is your
vector different from a deque?  And, if it is sufficiently different,
consider sending it to Boost <www.boost.org> which is a group working on
useful additions to the C++ Standard Library (with an eye towards inclusion
in that library in the next full revision of the Standard).
-- 
    - Don Waugaman (dpw@cs.arizona.edu)    O-             _|_  Will pun
Web Page: http://www.cs.arizona.edu/people/dpw/            |   for food
In the Sonoran Desert, where we say: "It's a dry heat..."  |     <><
What was the best thing before sliced bread?


More information about the Libstdc++ mailing list