Hi,
I was wondering whether anyone had thought about adding a rebind nested
template class to the boost ptrs, similar to those used by allocators.
A situation has recently occurred where I need to get a ptr to a derived
class from a pre to a base class, where the ptr to the base class is used
a typedef e.g
struct Base {};
typedef boost::shared_ptr<Base> BasePtr;
void func(const BasePtr& base)
{
}
struct Derived : public Base {};
typedef boost::shared_ptr<Derived> DerivedPtr;
^^^^^^^^^^^^^^^^^^^^^^^^^^
Don't want to have to do this
func(DerivedPtr(new Derived)) ....... etc
The reason I dont want to have to do the second typedef is that we have a
number of smart pointer classes of our own, and the type of the BasePtr
should be an implementation detail. If boost::shared_ptr had a rebind,
then we could add it to our own classes as well, and the actual wrapper
used would become an implementation detail
Cheers
Ben Young
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost