Не понимаю когда нужно заимствование?

Мне сложно понять когда надо использовать ссылки, а когда сами аргументы? Например self и &self или когда функция должна возвращать ссылку(fn some_fn(v) -> (&)i32)?
  • Вопрос задан
  • 80 просмотров
Пригласить эксперта
Ответы на вопрос 1
@potan
Если функция получает ссылку, то не она управляет ее временем жизни. Когда функция получила объект не по ссылке, она им владеет и больше ни кто не имеет к нему доступа пока функция его не вернет ли куда-либо передаст. Если функция его не вернула и ни куда не сохранила, занятая объектом память освобождается при завершении функции.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы