I have a few containers in a class, for example, vector or map which contain shared_ptr\'s to objects living on the heap.
For example
template
one thing to realize is that:
tr1::shared_ptr is mimicking the functionality of T const * namely what it points to is const, but the pointer itself isn't.
So you can assign a new value to your shared pointer, but I would expect that you wouldn't be able to use the dereferenced shared_ptr as an l-value.