Als «rust» getaggte Fragen

80
Wie erstelle ich ein HashMap-Literal?

Wie kann ich ein HashMap-Literal in Rust erstellen? In Python kann ich das so machen: hashmap = { 'element0': { 'name': 'My New Element', 'childs': { 'child0': { 'name': 'Child For Element 0', 'childs': { ... } } } }, ... } Und in Go so: type Node struct { name string childs map[string]Node }...

80
Konvertieren von Option <String> in Option <& str>

Sehr oft habe ich eine Option<String>aus einer Berechnung erhalten und möchte entweder diesen Wert oder einen fest codierten Standardwert verwenden. Dies wäre mit einer ganzen Zahl trivial: let opt: Option<i32> = Some(3); let value = opt.unwrap_or(0); // 0 being the default Aber...

80
Was ist der Unterschied zwischen Verwendung und extern?

Ich bin neu bei Rust. Ich denke, das usewird verwendet, um Bezeichner in den aktuellen Bereich zu importieren und externum ein externes Modul zu deklarieren. Aber dieses Verständnis (vielleicht falsch) ergibt für mich keinen Sinn. Kann jemand erklären, warum Rust diese beiden Konzepte hat und...

80
Schritt für Schritt interaktiver Debugger für Rust?

Wie kann ich die Rust-Anwendung Schritt für Schritt interaktiv debuggen, wie ich es mit "pry" in Ruby tun kann? Ich möchte in der Lage sein, die Variablen in Echtzeit zu sehen und vorzugsweise zu ändern, wenn ich einen Haltepunkt erreiche. Gibt es ein produktionsfertiges Projekt?...

80
Wann sollte Inline in Rust verwendet werden?

Rust hat ein "Inline" -Attribut, das in einer dieser drei Varianten verwendet werden kann: #[inline] #[inline(always)] #[inline(never)] Wann sollten sie verwendet werden? In der Rust-Referenz sehen wir einen Abschnitt mit Inline-Attributen , in dem steht Der Compiler fügt Funktionen...

78
Was ist Monomorphisierung im Kontext zu C ++?

Dave Hermans jüngster Vortrag in Rust sagte, dass sie diese Eigenschaft von C ++ ausgeliehen haben. Ich konnte nichts rund um das Thema finden. Kann jemand bitte erklären, was Monomorphisierung bedeutet?

78
Was ist ein Kistenattribut und wo füge ich es hinzu?

Um ein Gefühl dafür zu bekommen, wie Rust funktioniert, habe ich mich für einen kleinen terminalbasierten Texteditor namens Iota entschieden . Ich habe das Repository geklont und bin cargo buildnur gelaufen , um zu erfahren: error: *if let* syntax is experimental help: add #![feature(if_let)] to...

76
Erstellen eines Vektors von Nullen für eine bestimmte Größe

Ich möchte einen Vektor von Nullen mit einer bestimmten Größe initialisieren, die zur Laufzeit festgelegt wird. In C wäre es wie: int main(void) { uint size = get_uchar(); int A[size][size]; memset(A, 0, size*size*sizeof(int)); } Hier ist die Hilfsfunktion, die ich versucht habe, in Rust...

74
Wie komponiere ich Funktionen in Rust?

Ich versuche eine Funktion zu schreiben, die zwei Funktionen zusammensetzt. Das anfängliche Design ist ziemlich einfach: Eine Funktion, die zwei Funktionen übernimmt und eine zusammengesetzte Funktion zurückgibt, die ich dann mit anderen Funktionen zusammenstellen kann, da Rust keine...

73
Wie drucke ich einen Vec?

Ich habe den folgenden Code ausprobiert: fn main() { let v2 = vec![1; 10]; println!("{}", v2); } Aber der Compiler beschwert sich: error[E0277]: `std::vec::Vec<{integer}>` doesn't implement `std::fmt::Display` --> src/main.rs:3:20 | 3 | println!("{}", v2); | ^^

72
Verweise auf Merkmale in Strukturen

Ich habe eine Eigenschaft Foo pub trait Foo { fn do_something(&self) -> f64; } und eine Struktur, die auf dieses Merkmal verweist pub struct Bar { foo: Foo, } Beim Versuch zu kompilieren bekomme ich error: reference to trait `Foo` where a type is expected; try `Box<Foo>` or `&Foo`...