2011-02-04 18 views
25

標準<memory>ファイルのboost::shared_ptrstd::shared_ptrの間に相違があるかどうかは疑問でした。標準<memory>ファイルのboost :: shared_ptrとstd :: shared_ptrの相違点

+0

これは実装によって異なります。 – robert

+0

@robert交換可能に使用できますか?私はこれを実装しようとしていますhttp://stackoverflow.com/questions/3559412/how-to-store-different-data-types-in-one-list-c/3560884#3560884 – Pepe

+1

@ P.R。 - 'std :: shared_ptr'は' tr1 :: shared_ptr'のC++ 0x形式であり、boostの 'shared_ptr'も同じように動作するはずです:http://stackoverflow.com/questions/3831572/differences-between-tr1shared- ptr-and-boostshared-ptr – birryree

答えて

19

std::shared_ptrは、tr1::shared_ptrのC++ 0x形式であり、ブーストのboost::shared_ptrは同じように動作するはずです。

しかし、std::shared_ptrは、C++ 0xの標準に準拠した実装では、/以下のリンクで説明するように、shared_ptrクラスに、より利便性の振る舞いがある可能性がありますする必要があります

shared_ptrは、通常のC++データポインタのようにできるだけ多く動作する参照カウントポインタです。 TR1の実装には、エイリアシングやポインタ演算などの特定のポインタ機能がありませんでしたが、C++ 0xバージョンではこれらが追加されます。

ものの迅速チラッと見から、私はshared_ptrタイプにoperator+と同様の演算が表示されません。

関連する問題