Re: Simplfied vector<> ?

[email protected] (Chip Salzenberg) Sun, 30 Apr 2000 00:34:25 -0700
Newsgroups perl.perl6.porters
Message-ID <[email protected]>
According to Jean-Louis Leroy:
> > The standard C++ vector<> container is almost perfect for use in Perl
> > arrays and the data stack.  But it has a major weakness...  It's _so_
> > general that it doesn't use memcpy() [or moral equivalent] when it has
> > to grow.  Instead, it uses copy constructors in a loop.  That could be
> > a major performance issue with vector<Counted_p<T>>.
> 
> Have you considered deque<>? It doesn't copy the elements when growing.

That's the good part.  The bad part is, no guaranteed contiguous
storage of elements.  That's something I'd rather not lose.

> > Now, I could write a vector<>
> 
> Do you mean a vector_Counted_p<>? Better create a partial
> specialization of vector<>:
> 
>         template<class T, class A>
>         class vector<Counted_p<T>, A>
>         {
>                 // ...
>         };

Ah, that's a good thought indeed.  Thanks.
-- 
Chip Salzenberg              - a.k.a. -              <[email protected]>
"I wanted to play hopscotch with the impenetrable mystery of existence,
    but he stepped in a wormhole and had to go in early."  // MST3K