mut s = String::from("hello");
                  
                  
                  let r1 = &mut s;
                  
                  
                  let r2 = &mut s;
                  
                  
                  
                  
                  
                  Но так делать можно:
                  
                  
                   let mut s = String::from("hello");
                  
                  
                     {
                  
                  
                         let r1 = &mut s;
                  
                  
                     } 
                  
                  
                      let r2 = &mut s;
                  
                  
                  
                  
                  
                  Пока все понятно.
                  
                  
                  Но я попробовал сделать так и все равно работает
                  
                  
                  let mut s = String::from("hello");
                  
                  
                  let r2 = &mut s;
                  
                  
                  {
                  
                  
                     let r1 = &mut s;
                  
                  
                  } 
                  
                  
                  
                  
                  
                  Вопрос почему?
                  
                  
                  Ведб r2 все равно видна в скоупе блока фигурных скобок. По сути так же как и в 1 примере.
                  
                  
                
Но если заюзать там r2, то сломается
nll. Компилятор видит что ты r1 не используешь после создания r2 и дропает его.
В первом случае в примере выше, r2 где-то дропается?
Как только r2 создаётся.
r1 вы имеои ввилду?
А как расшифровывается?
Non lexical lifetimes
Теперь можно и первый случай. Дока немного устарела, если так говорит. Нельзя будет только воспользоваться r1.
в доке ещще было принтлн этих переменных, поэтому еррор
Обсуждают сегодня