Boost logo

Boost :

From: Achilleas Margaritis (axilmar_at_[hidden])
Date: 2007-09-21 05:14:22


O/H Kim Barrett έγραψε:
> At 2:06 AM +0300 9/21/07, Achilleas Margaritis wrote:
>> I thought std containers use the allocator::pointer type for their pointers.
>
> Unfortunately, not necessarily. They're permitted to bypass that and use
> T* directly. Ion Gaztañaga ran into this when trying to put containers
> into shared memory for boost.interprocess.
> _______________________________________________
> Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
>

The collector offers the possibility of customizing the scanning
procedure (the procedure which scans a block for pointers) through the
class gc_traits<T>. So if there is a data structure where gc_ptr<T> can
not be used, a custom scan routine especially coded for the data
structure in question can solve the problem.


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