C++ 来自Boost库的共享指针
目前,我正在使用Boost库中的共享指针C++ 来自Boost库的共享指针,c++,boost,shared-ptr,C++,Boost,Shared Ptr,目前,我正在使用Boost库中的共享指针 class A { }; main { boost::shared_ptr<class A> classpointer; } 在什么情况下类指针计数器将递增?当前,指针为空,计数为零 例如,当您分配对象的所有权时,它将递增为1 classpointer.reset(new A); // owns the object, count=1 如果复制此指针或共享同一对象所有权的任何其他指针,则计数将增加。如果销毁任何此类指针,或将其重
class A
{
};
main
{
boost::shared_ptr<class A> classpointer;
}
在什么情况下类指针计数器将递增?当前,指针为空,计数为零 例如,当您分配对象的所有权时,它将递增为1
classpointer.reset(new A); // owns the object, count=1
如果复制此指针或共享同一对象所有权的任何其他指针,则计数将增加。如果销毁任何此类指针,或将其重新分配给其他对象,或将其重置为空,则该指针将递减
通常,特定对象的计数等于当前共享其所有权的共享指针数。当计数变为零,因此没有指针保留共享所有权时,对象将自动删除。但您没有使用boost库中的共享指针。很抱歉,Juanchopanza我应该使用boost而不是std,现在它已被正确编辑。请帮我做这个。