лучше использовать shared_ptr.reset или operator =?

Я пытаюсь обернуть голову вокруг новых идиом для C ++ 11.

Похоже, что по крайней мере с shared_ptr, между использованиемnew T() а такжеmake_shared<T>().

Но что из сброса общего указателя, чтобы указать на новый экземпляр чего-либо. Раньше я бы обычно использовалreset(new T()) член. Однако разве это не страдает от той же проблемы, что и отсутствие использования make_shared ()? (то есть он не позволяет make_shared выделить объект, поэтому он вынужден размещать счетчик ссылок в отдельном выделении, а не в том же выделении, что и сам T?)

Просто лучше в дальнейшем использовать:

   mysharedptr = make_shared<T>(args...);

Или есть лучший способ?

И не должен ли сброс предлагать переменную переадресацию аргументов, как это делает make_shared, чтобы можно было написать mysharedptr.reset (args ...) ;?

Ответы на вопрос(2)

Ваш ответ на вопрос