Suchergebnisse für Anfrage "borrow-checker"
"Geliehener Wert lebt nicht lange genug" bei Verwendung von as_slice ()
Ich bin auf einen Fehler gestoßen: extern crate rustc_serialize; // 0.3.24 use rustc_serialize::base64::{self, FromBase64, ToBase64}; fn main() { let a: [u8; 30] = [0; 30]; let b = a.from_base64().unwrap().as_slice(); println!("{:?}", b); }Der ...
Leihprüfung für Eltern-Kind-Beziehung
Ich habe den folgenden Code, der die Fehlermeldung erzeugt, die in seinen Kommentaren markiert wird. Ich glaube, ich verstehe die Botschaft: Ich möchte Eltern zweimal ausleihen: einmal zum Finden ihres Kindes und einmal als Argument für das Kind ...
Über einen Vektor veränderlicher Verweise auf Merkmalsobjekte iterieren
Ich habe einstruct enthält veränderbare Verweise auf Merkmalsobjekte: trait Task { fn do_it(&mut self); } struct Worker<'a> { tasks: Vec<&'a mut Task>, }In einer Methode vonWorker, Ich möchte die Aufgaben durchlaufen und ihr @ ...
Warum kann ich einen Wert und eine Referenz auf diesen Wert nicht in derselben Struktur speichern?
Ich habe einen Wert und möchte diesen Wert und einen Verweis auf etwas in diesem Wert in meinem eigenen Typ speichern: struct Thing { count: u32, } struct Combined<'a>(Thing, &'a u32); fn make_combined<'a>() -> Combined<'a> { let thing = Thing { ...
Kann beim Auspacken nicht aus geliehenen Inhalten entfernt werden
Dies ist der Code, den ich ausführen möchte: fn my_fn(arg1: &Option<Box<i32>>) -> (i32) { if arg1.is_none() { return 0; } let integer = arg1.unwrap(); *integer } fn main() { let integer = 42; my_fn(&Some(Box::new(integer))); }(uf dem ...
kann nicht aus entliehenen Inhalten verschoben werden, wenn eine Mitgliedsvariable in einer & mut self-Methode entpackt wird
Ich habe versucht, eine Disjoint-Set-Datenstruktur in Rust zu erstellen. Der entsprechende Code lautet: pub struct Set<'a, T: 'a> { rank: u32, value: T, parent: Option<&'a mut Set<'a, T>>, } impl<'a, T> Set<'a, T> { pub fn find(&'a mut self) -> ...
Warum werden geschachtelte Iterator-Closures keine Werte aus dem äußeren Gültigkeitsbereich kopieren?
Ich versuche, verschachtelte Iteratoren zu verwenden, wobei der innere Iterator den Wert des äußeren Iterators verwendet. vec![0;10].iter().flat_map(|&a| { (0..10).map(|b|{ a + b }) });Error:a lebt nicht lange genug (0..10).map(|b|{ ^^^note: ...
Wer hat eine Variable ausgeliehen?
Ich kämpfe mit dem Leihschein. Ich habe zwei ähnliche Code-Teile, von denen einer wie erwartet funktioniert und der andere nicht. Der, der wie erwartet funktioniert: mod case1 { struct Foo {} struct Bar1 { x: Foo, } impl Bar1 { fn f<'a>(&'a ...
Ausgeliehener Wert lebt beim Erstellen eines Vec @ nicht lange gen
Anmerkung der Redaktion: Diese Frage wurde vor Rust 1.0 gestellt. Seitdem haben sich viele Funktionen und Typen sowie bestimmte Sprachsemantiken geändert. Der Code in der Frage ist nicht mehr gültig, aber die Ideen, die in den ...
Borrow-Check-Fehler bei Variable, die nicht lange genug in verschachteltem Lambda lebt
Ich erhalte einen Fehler in einem verschachtelten Lambda. let rows = vec![ vec![3, 6, 2, 8, 9, 0], vec![0, 0, 1, 4, 5, 1], ]; let pair_sums = rows.iter() .flat_map(|row| { (0 ..= row.len()).map(|i| row[i] + row[i + 1]) }) .collect::<Vec<_>>(); ...
Seite 1 von 2