fn main() {
let mut foo = 1;
let mut func = || foo += 1;
while foo < 5 {
func();
}
}
error[E0503]: cannot use `foo` because it was mutably borrowed
--> src/main.rs:5:11
|
4 | let mut func = || foo += 1;
| -- borrow of `foo` occurs here
5 | while foo < 5 {
| ^^^ use of borrowed `foo`
Я понимаю, почему это не работает, но я ищу способ как-то обойти проверку заимствований.Есть ли способ использовать закрытие здесь?Есть ли хорошая альтернатива помимо использования функции?У меня есть ситуация, когда я должен изменить несколько переменных.