Boost logo

Boost :

Subject: Re: [boost] request for discussion - yet another approach to automated memory management that solves the cycles problem and is very efficient
From: Ilya Sokolov (ilyasokol_at_[hidden])
Date: 2009-02-27 09:50:04

Achilleas Margaritis wrote:
>> Hi Achilleas.
>> Could you explain why this should work?
> The idea is this the following:
> An object is deleted if all the ptrs that point to it expired.

This statement contradicts with

> When a ptr releases an object, it checks if the object has any other ptrs
> with age older than the ptr. If not so, then it means the released ptr is
> the oldest one, and therefore the object should be deleted.

If the last one is correct, the idea seems equal to the following:

int* new_ptr;
   std::auto_ptr<int> oldest(new int(42));
   new_ptr = oldest.get();
*new_ptr = 43; // boom

Boost list run by bdawes at, gregod at, cpdaniel at, john at