
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.