4.2 Жизненный цикл
жизненный цикл
- избегать
dangling referfence
(избегать оборванных ссылок) - Все ссылки в rust имеют свой жизненный цикл, указывающий допустимую область действия ссылки.
- Как правило, это неявно, но об ошибке будет сообщено, если ее нельзя вывести, и жизненный цикл необходимо отметить вручную.
Вручную определить жизненный цикл
-
fn longest(x: &str, y: &str) -> &str
-
Действителен тот, у которого наименьший срок службы.
-
попробуй не использовать
'static
-
пропуск правил
- Каждый параметр ссылочного типа имеет свой жизненный цикл
- Существует только один входной параметр времени жизни, тогда выходное время жизни равно этому времени жизни.
- Да
&self
или&mut self
, тогда выходной жизненный цикл являетсяself
жизненным циклом
-
Механизм жизненного цикла все еще совершенствуется