:
file(std::make_unique<std::ifstream>(filename));
{ }
А в чем разница ? в 1м случае может быть какой-нибудь memory leak ? или просто 2й вариант "быстрее" ?
Зачем вообще такое делать?
file в первом и во втором случае std::unique_ptr?
Объект, создаваемый динамически, во втором случае автоматом защищён по RAII от утечки при возникновении исключения. В первом случае для этого надо делать блок try ( у тебя его нет)
Утечка может (или могла быть) тут void f(unique_ptr<T>, unique_ptr<T>) f(new T, new T);
ап
Мы вроде ЭТО обсуждали, нет?
Обсуждают сегодня