Здравствуйте, so5team, Вы писали:
S>Здравствуйте, lpd, Вы писали:
lpd>>В простоте кода, надежности, расширяемости, в чем угодно. Хотя бы в общих чертах описание что за объект такой и в каком контексте без unique_ptr<T> и его move было бы плохо.
S>В том числе там и unique_ptr применяется для того, чтобы руками не закрывать ресурсы.
Я так примерное использование unique_ptr<> и представлял, только в примере не видно, где делают его move. Реально упрощает ли это код? В принципе наверное да, хотя мне больше нравится явно и наглядно вызывать close/free(), чем зависеть от уничтожения unique_ptr<> на стеке, которое мне не кажется проще. В С++ компилятор и так многое проверяет по сравнению с каким-нибудь питоном, и я бы таким положением вещей и ограничился. У меня в коде бывают ошибки и сложные участки, но это обычно учет ссылок, синхронизация, обработка ошибочных ситуаций и прочие ошибки архитектуры и логики. Такое синтакическими фишками вроде unique_ptr<> не решается. Но если вам так нравится, пишите unique_ptr<>, не буду спорить.
У сложных вещей обычно есть и хорошие, и плохие аспекты.
Берегите Родину, мать вашу. (ДДТ)