Boost logo

Boost :

From: Philippe A. Bouchard (philippeb_at_[hidden])
Date: 2003-01-14 20:55:38


Greeting everyone,

    It seems placement operator new (size_t, ...) would extend a lot garbage
collection possibilities. Why don't we define a set of rules for each tag
this overloaded placed operator would use:

shared_ptr<int>(new int());

GC type defined at run-time:
shared_ptr<int>(new (gc) int()); // Add pointer to a list
shared_ptr<int>(new (rc) int()); // Add counter + pointer to a list
shared_ptr<int>(new (os) int()); // Add owner to a list

GC type defined at compile-time:
placed_ptr<int>(new (po) int()); // Reserve an extra integer to the
allocated block

    shared_ptr<> would be more portable while placed_ptr<> would require a
placed object with operator new (size_t, po).

Regards,

Philippe A. Bouchard


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk