Re[28]: Они сделали дерьмо опять
От: chaotic-kotik  
Дата: 21.05.20 15:32
Оценка:
Здравствуйте, lpd, Вы писали:

lpd>Во-первых, мув-семантика — это не тривиально. Это новый тип с новыми правилами работы с ним, без опыта с которыми будут сложности.


с чем угодно будут проблемы, если не уметь этим пользоваться, если ты не хочешь пользоваться мув семантикой, никто тебя не заставляет это делать, не добавишь ее поддержку в свой класс и он будет просто копироваться, тоже мне проблема

lpd>Во-вторых, RAII это не серебрянная пуля. Полно случаев когда он не описывает сложное владение объектом.


это какие же?

lpd>Может это и ясно, но синтаксис у умных указателей очень громоздкий. И тут начнутся всякие auto, с которыми уже вообще ничего в коде не видно.


Это чем же он громоздкий? Сишные st1->st2.fld3->st4 это значит не громоздко совсем, да?

CK>>сборка мусора може и удобнее но тормознее, цикличесские ссылки дебажатся довольно тривиально

lpd>Не уверен что так тривиально они дебажатся всегда.

с помощью ASan довольно тривиально, но вообще это не приходится делать, если правильно проектировать архитектуру, то бишь делать так, чтобы граф зависимостей объектов был ацикличным и направленным (это также неплохо помогает от дедлоков), то что сишечка позволяет иметь кучу циклических ссылок между объектами вовсе не значит что их нужно обязательно создавать и что это есть хорошо

lpd>Я бы предпочел вручную освобождение прописать, хотя если нравится RAII то могу понять.


тут дело не в RAII, а в том, что вручную придется прописывать в нескольких местах, потому что исключения

Явный new/delete или malloc/free в проекте на С++ это чаще всего code smell, нет реально ни одной причины для того, чтобы выделять и освобождать память или создавать и удалять объекты таким способом. Ты так предпочитаешь делать, ок, но для всех остальных в этом нет никакой логики, это просто код с душком. Автор кода просто зачем-то сделал что-то странное, нужно повнимательнее посмотреть на ревью.

lpd>Вроде как никто не мешает тормозящие массовые объекты и самому при сборке мусора удалять(тут я не специалист). Если сборка мусора тормозит, ее можно отключить и перейти на ручную работу с памятью или умные указатели.


там не удаление объектов тормозит, а поиск объектов, которые никто не использует и которые можно удалить
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.