std::shared_ptr は、まあ速度的に不利になる場合もあるだろうけど、
std::unique_ptr を避ける理由って C++11 すら使えない環境の場合以外にはないと思うんだが、何かある?