Запитання з тегом «borrow-checker»

2
Чому я не можу зберігати значення та посилання на це значення в одній структурі?
У мене є значення, і я хочу зберігати це значення та посилання на щось усередині цього значення у власному типі: struct Thing { count: u32, } struct Combined<'a>(Thing, &'a u32); fn make_combined<'a>() -> Combined<'a> { let thing = Thing { count: 42 }; Combined(thing, &thing.count) } Іноді у мене є …

1
Неможливо перемістити запозичений вміст / не можна вийти за спільну довідку
Я не розумію помилки cannot move out of borrowed content. Я його отримував багато разів і завжди вирішував, але ніколи не розумів, чому. Наприклад: for line in self.xslg_file.iter() { self.buffer.clear(); for current_char in line.into_bytes().iter() { self.buffer.push(*current_char as char); } println!("{}", line); } видає помилку: error[E0507]: cannot move out of borrowed …

1
Що означає "не може запозичити як незмінний, оскільки він також запозичений як змінний" означає в індексі вкладеного масиву?
Що означає помилка в цьому випадку: fn main() { let mut v: Vec<usize> = vec![1, 2, 3, 4, 5]; v[v[1]] = 999; } error[E0502]: cannot borrow `v` as immutable because it is also borrowed as mutable --> src/main.rs:3:7 | 3 | v[v[1]] = 999; | --^---- | | | | …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.