我一直在做游戏,很多时候我想使用智能指针,但我希望它像一个共享指针,当引用计数达到 0 时它会自动删除内存,并且能够当我想要它时强制它释放,并且所有 shared_ptr 都应该知道该对象已被释放。
这是这样做的吗?
class Data
{
//stuff
};
shared_ptr< unique_ptr< Data > > mBestOfBothWorlds( new unique_ptr<Data>( new Data() ) );
这对性能有何影响?它会非常慢吗?它会正常工作吗?
似乎您不仅可以获得自动内存管理,还可以获得手动管理,以及将数据与其他数据交换的能力,并且拥有 shared_ptr 的每个人都可以轻松获得新数据。