This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: std::ext STL (was: Re: design doc on alternative pointer support)


"Phil Bouchard" <philippe@fornux.com> wrote in message 
g8140i$6lg$1@ger.gmane.org">news:g8140i$6lg$1@ger.gmane.org...

[...]

> list:
> n1 <-> n2 <-> n3 <-> n4
>
> stack:
> n1 -> n2 -> n3 -> n4
>
> Now clear() iterates from n1 to n4 in both cases and deletes associates
> nodes.  But if we use smart pointers then if we'll get the entire 
> container
> deleted by deleting n1.  In the case of the list then it will be different
> because n2, n3 and n4 will not be deallocated just by deleting n1 (in case
> of shifted_ptr yes but not shared_ptr).  So I'm still careful here and I
> would like opening this subject before anything else.

I forgot to say in the case of the list, if you set n1.next to 0 then you 
will not be able iterating on to n2, etc.


-Phil




Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]