auto_ptrの代わりにshared_ptrを使う場合に、auto_ptrは複製が無いので参照カウンタのオーバーヘッドが起きない。
auto_ptrのムーブ(=演算子)はshared_ptrではswapを使うのでやはり参照カウンタのオーバーヘッドが無い。