2009-09-03 23 views
2

另一个构件我有一个类是这样的:我怎样才能使用auto_ptr作为成员变量,处理变量

class A 
{ 

private: 

B* ptr; 

} 

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

class A 
{ 
public: 

auto_ptr<B> m_Ptr; 

private: 

B* ptr; 

} 

有哪些不同的方式的人已经实现了这一点,任何问题/优势,他们看到了彼此...... 感谢

回答

3

如果我明白你的问题,我会建议使用::std::tr1::shared_ptr::boost::shared_ptr

这篇文章是a good tutorial on shared_ptr in TR1。增强的东西基本上是一样的。如果你有它,我会推荐使用TR1版本,因为所有的C++编译器都应该支持TR1,其中boost是一个附加库,你可能无法在任何地方找到它。

相关问题