POCO::Foundation 内存管理(二) SharedPtr
Poco::SharedPtr 实现了针对类的引用计数功能,而这些类不需要自己实现引用计数(AutoPtr的duplicate()和release()函数)。
Poco::SharedPtr有着和Poco::AutoPtr相同的解引用以及相关操作。
警告:赋值指向普通对象的指针到不同的Poco::SharedPtr将导致多个拥有者的产生,进而引起未定义的行为,换句话说,就是crash。
一旦你对一个对象使用Poco::SharedPtr,就不要再使用是想那个对象的指针了。
后,从名字也可以看出,它可以管理数组了。总结一下三个模板参数的意义:
class C:要管理的对象类型
class RC:执行引用计数的实现方法
class RP:实现最后析构被管理的对象的方法
谢谢观赏!