08項 auto_ptr型のコンテナを作成することはやめよう

auto_ptr型のコンテナを作成することはやめよう



auto_ptrは、所有権移転方式のポインタです。
なので、auto_ptrをコピーするとき、コピー元のauto_ptrはNULLに設定されます。

auto_ptr<Widget> pw1(new Widget);
auto_ptr<Widget> pw2(pw1); //pw1はNULLに設定される。

sortなど、内部でコピーを行う関数を呼び出すとおかしな動作となります。
なので、auto_ptr型のコンテナを作成してはいけません。