のstd::make_uniqueような効率上の利点はありstd::make_sharedますか?
手動で構築するのと比較してstd::unique_ptr:
std::make_unique<int>(1); // vs
std::unique_ptr<int>(new int(1));
make_sharedオブジェクトのスペースと制御ブロックのスペースの両方を1つの割り当てで一緒に割り当てることができるためです。その代償として、オブジェクトを制御ブロックとは別に解放することができないためweak_ptr、大量に使用すると、より多くのメモリを使用することになります。
make_shared任意の効率だけ長い手のコードを書く以上を持っていますか?