使用智能指针必须包含头文件:
程序举例:
无法释放的原因是因为出现了环形互引用:
为了解决这个问题,可以采用weak_ptr来隔断交叉引用中的回路;所谓weak_ptr,是一种弱引用,表示只是对某个对象的一个引用和使用,而不做管理工作;
改进方案:将一个类中的shard_ptr改为weak_ptr
使用智能指针必须包含头文件:
程序举例:
无法释放的原因是因为出现了环形互引用:
为了解决这个问题,可以采用weak_ptr来隔断交叉引用中的回路;所谓weak_ptr,是一种弱引用,表示只是对某个对象的一个引用和使用,而不做管理工作;
改进方案:将一个类中的shard_ptr改为weak_ptr