我发现 QPointer 。是否有任何其他人呢?

有帮助吗?

解决方案

升压 - 所述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
}

其他提示

“的boost :: weak_ptr的” 作品真的很好用 “的boost :: shared_ptr的”(在TR1也可)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top