Есть ли std::make_uniqueкакие-то преимущества эффективности std::make_shared?
По сравнению с ручным строительством std::unique_ptr:
std::make_unique<int>(1); // vs
std::unique_ptr<int>(new int(1));
make_sharedможет выделить как пространство для объекта, так и пространство для блока управления вместе в одном распределении. Цена этого заключается в том, что объект не может быть освобожден отдельно от блока управления, поэтому, если вы используете weak_ptrмного, вы можете использовать больше памяти.
make_sharedкакая-то эффективность по сравнению с простым написанием длинного кода?