我找到了QPointer。还有其他人吗?
答案 0 :(得分:8)
Boost - 如果您还使用weak_ptr
,shared_ptr
有一些很好的功能,可以安全使用。您对weak_ptr
生命周期管理的实例保留shared_ptr
引用。当您需要使用基础实例时,请使用shared_ptr
类的构造函数或shared_ptr
方法将其转换为lock
实例。如果删除了基础实例,则操作将失败。使用的线程安全与shared_ptr
类相同:
shared_ptr<int> p(new int(5));
weak_ptr<int> q(p);
// some time later
if(shared_ptr<int> r = q.lock())
{
// use *r
}
答案 1 :(得分:6)
“boost :: weak_ptr”适用于“boost :: shared_ptr”(也可在tr1中使用)