std :: auto_ptr oder boost :: shared_ptr für pImpl idiom?
Bei Verwendung despImpl idiom ist es vorzuziehen, ein @ zu verwendboost:shared_ptr
anstelle einerstd::auto_ptr
? Ich bin sicher, ich habe mal gelesen, dass die Boost-Version ausnahmefreundlicher ist?
class Foo
{
public:
Foo();
private:
struct impl;
std::auto_ptr<impl> impl_;
};
class Foo
{
public:
Foo();
private:
struct impl;
boost::shared_ptr<impl> impl_;
};
[EDIT] Ist es immer sicher, std :: auto_ptr <> zu verwenden, oder gibt es Situationen, in denen ein alternativer intelligenter Boost-Zeiger erforderlich ist?