Suchergebnisse für Anfrage "rust"

6 die antwort

Umwandlung von Zahlenprimitiven (i32, f64 usw.) in Bytedarstellungen

Ich schreibe eine Bibliothek, die Daten in ein / aus einem Binärformat codiert / decodiert. Ein Teil des Formats sind Zahlen, für die ich Rusts native Primitivtypen verwende (wiei8, i64, f32 etc.) Gibt es eine einfache, integrierte Möglichkeit, ...

4 die antwort

Wie liefert Rust die Bewegungssemantik?

DasRust language website [http://www.rust-lang.org/] Claims verschieben die Semantik als eines der Merkmale der Sprache. Aber ich kann nicht sehen, wie die Verschiebungssemantik in Rust implementiert ist. Rust-Boxen sind der einzige Ort, an dem ...

2 die antwort

Builder-Muster - geliehener Wert lebt nicht lange genug

Ich versuche, einen einfachen Builder zu implementieren, habe aber Probleme mit der Lebensdauer. Das Folgende gibterror: borrowed value does not live long enough. Diese ...

TOP-Veröffentlichungen

2 die antwort

Wie kann ich mehr als zwei Iteratoren komprimieren?

Ist es eine direktere und besser lesbare Möglichkeit, Folgendes zu erreichen: fn main() { let a = [1, 2, 3]; let b = [4, 5, 6]; let c = [7, 8, 9]; let iter = a.iter() .zip(b.iter()) .zip(c.iter()) .map(|((x, y), z)| (x, y, z)); }Das heißt, wie ...

2 die antwort

Wie kann ich Referenzen über mehrere Threads hinweg freigeben?

Ich kann keine Referenz zwischen Threads teilen. trait Facade { /*some functions*/ } struct Client<'a> { facade: &'a mut Facade, join_grd: thread::JoinGuard<'a()>, } impl<'a> Client<'a> { pub fn new(my_facade: &'a mut Facade) -> Client<'a> { ...

2 die antwort

Callback-System mit Closures erstellen

Ich versuche so etwas wie ein "Rückrufsystem" zu machen. Zum Beispiel gibt es ein Fenster und ein paar Schaltflächen. Das Fenster legt Rückrufe für jede Schaltfläche fest. Beide Rückrufe sollten den Status des Fensters ändern. Der Compiler ...

2 die antwort

Was ist der Unterschied zwischen "usize" und "u32"?

Die Dokumentation sagtusize ist Operationen und Konstanten für Ganzzahlen ohne Vorzeichen in Zeigergröße. n den meisten Fällen kann ich @ ersetzusize mitu32 und nichts passiert. Ich verstehe also nicht, warum wir zwei Typen brauchen, die sich ...

4 die antwort

Mehrere veränderbare Entlehnungen während einer Tiefensuche

Wie würde man diese Funktion umstrukturieren, die eine Tiefensuche durchführt und das übergeordnete Element des übereinstimmenden Knotens zurückgibt? Ich weiß, dass Variationen dieses Problems sehr häufig aufgetreten sind (z. B. Mehrere ...

4 die antwort

Wie summiere ich einen Vektor mit fold?

Die [https://doc.rust-lang.org/book/iterators.html] Rust Tutorial erklärt diefold() Mechanismus gut, und dieser Beispielcode: let sum = (1..4).fold(0, |sum, x| sum + x);works wie erwartet. Ich würde es gerne auf einem Vektor ausführen, also ...

2 die antwort

Parameter-Typ lebt möglicherweise nicht lange genug?

Das folgende Codesegment gibt mir einen Fehler: use std::rc::Rc; // Definition of Cat, Dog, and Animal (see the last code block) // ... type RcAnimal = Rc<Box<Animal>>; fn new_rc_animal<T>(animal: T) -> RcAnimal where T: Animal, /* + 'static */ ...