In your offer
.
, , , . , .
shared_ptr... (, , ...), .
1:
(shared_ptr:: release) , ( , ).
, . , shared_ptr . , ... .
2:
, ( ) , . , , , .
struct Object;
class Pool // may be a singleton, may be synchronized for multi-thread usage
{
public:
int accept(boost::shared_ptr<Object>);
void release(int id) { m_objects.erase(id); }
private:
std::map< int, boost::shared_ptr<Object> > m_objects;
};
, "" , , shared_ptr:)
:: shared_ptr
, ( ++), shared_ptr. .
( ) - (my_shared_ptr?), :
- shared_ptr
- shared_ptr ( )
- , , .
, shared_ptr, . , C , , , "" , ( , ).
"reinterpret_cast", . - C/++!
? , , .