Здравствуйте, johny5, Вы писали:
J>Не читал но согласен, в Расте большинство объектов by value. Одно спасает — std::move при передачи в/из функции там по умолчанию (кстате moving любого объекта в Расте (из тех что не Pin<>) помоему это всегда memcpy). В правильно написанной С++ программе за этим тоже нужно следить, чтобы толстые объекты не копировались.
не понятно, что значит by-value. Вроде полная аналогия с С++ Также по-умолчанию производится копирование. И только если не реализован трейт Copy производится перемещение. К тому же в Rust перемещение более толковое кмк — объект вовсе исключается из рассмотрения. По нему после перемещения никаких действий не производится. В C++, наоборот, все перемещённые объекты надо ещё "удалить" (вызвать деструкторы) что в большинстве случаев — просто нагрев процессора.
В общем пока проблемы не понял совсем