тут всё также, а на самом деле даже и проще.
UPD: У make_unique понятно никаких, но как его использование помогает больше чем эстетически, непонятно.
https://arne-mertz.de/2018/09/make_shared-vs-the-normal-shared_ptr-constructor/
Вопрос не о shared. Более того в статье про make_unique ни слова.
Принцип тот же самый
Если один из аргументов создаётся через new а другой кидает, то первый утечёт
Повторюсь: https://t.me/ProCxx/509936 . Более того, в скинутой вами статье тоже пишут, что это полезно лишь до C++17.
Если у конструктора два аргумента, и в одном new, а другое кидает, то это и с make_shared утечёт
> Order of execution and exception safety is another issue that has to be kept in mind, at least before C++17. Из статьи.
Обсуждают сегодня