2009-09-03 67 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是一個附加庫,你可能無法在任何地方找到它。

相關問題