gpt4 book ai didi

c++ - 如何使用 auto_ptr 作为处理另一个成员变量的成员变量

转载 作者:太空狗 更新时间:2023-10-29 23:48:20 25 4
gpt4 key购买 nike

我有这样一个类:

class A 
{

private:

B* ptr;

}

但是 B ptr 是在不同的 A 对象之间共享的。我如何使用 auto_ptr 以便在 A 被破坏时 B 保持打开状态,以便指向同一 ptr 的其他 A 对象可以继续而不会出现问题。这看起来不错吗:

class A
{
public:

auto_ptr< B > m_Ptr;

private:

B* ptr;

}

人们实现这个的不同方式是什么以及他们看到的任何问题/优势......谢谢

最佳答案

您正在寻找的是 shared_ptr。它恰好处理这种类型的场景。

这是 BOOST 库的一部分,而不是 STL,因此它可能无法在您的特定平台上使用。但是,如果您在 google 上搜索一下,您会发现许多独立的引用计数指针实现,它们将在这里满足您的需求。

关于c++ - 如何使用 auto_ptr 作为处理另一个成员变量的成员变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1374265/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com