Arbeiten mit Arrays fester Größe
Arrays in Rust haben eine feste Länge und müssen Elemente desselben Typs enthalten. Sie sind nützlich, wenn Daten auf dem Stack statt auf dem Heap gespeichert werden sollen.
Snippet öffnen →Lies diese Rust-Snippets für Anfänger Zeile für Zeile — jedes kommt mit einer Erklärung, was der Code tut und warum.
Arrays in Rust haben eine feste Länge und müssen Elemente desselben Typs enthalten. Sie sind nützlich, wenn Daten auf dem Stack statt auf dem Heap gespeichert werden sollen.
Snippet öffnen →Funktionen werden mit 'fn' deklariert. Parameter müssen explizite Typangaben haben, und der Rückgabetyp wird nach einem Pfeil '->' angegeben. Der letzte Ausdruck in einer Funktion ist ihr Rückgabew…
Snippet öffnen →In Rust sind Variablen standardmäßig unveränderlich, was bedeutet, dass ihr Wert nach der Zuweisung nicht mehr geändert werden kann. Um eine Variable aktualisierbar zu machen, muss explizit das Sch…
Snippet öffnen →In Rust ist 'if' ein Ausdruck, nicht nur eine Anweisung. Das bedeutet, dass es einen Wert zurückgibt, der einer Variablen zugewiesen werden kann, vorausgesetzt, alle Zweige geben den gleichen Typ z…
Snippet öffnen →Rust verwendet das Option-Enum, um einen möglicherweise fehlenden Wert darzustellen, anstatt Null zu verwenden. 'match' wird verwendet, um sowohl das Vorhandensein (Some) als auch das Fehlen (None)…
Snippet öffnen →Der match-Operator ermöglicht es Ihnen, einen Wert mit einer Reihe von Mustern zu vergleichen und Code basierend auf dem passenden Muster auszuführen.
Snippet öffnen →Structs ermöglichen es Ihnen, benutzerdefinierte Datentypen zu erstellen, indem Sie verwandte Werte gruppieren. Jedes Feld hat einen Namen und einen Typ.
Snippet öffnen →Enums (Aufzählungen) ermöglichen es Ihnen, einen Typ zu definieren, indem Sie seine möglichen Varianten aufzählen. Varianten können auch Daten enthalten.
Snippet öffnen →In Rust wird bei der Zuweisung eines komplexen Typs wie String an eine andere Variable der Wert zum neuen Besitzer 'verschoben'. Die ursprüngliche Variable wird ungültig.
Snippet öffnen →Vektoren ermöglichen es Ihnen, eine variable Anzahl von Werten nebeneinander im Speicher zu speichern. Im Gegensatz zu Arrays können sie wachsen oder schrumpfen.
Snippet öffnen →In Rust sind Variablen standardmäßig unveränderlich. Das bedeutet, dass Sie einer Variable nach der Zuweisung keinen neuen Wert mehr geben können. Dies ist eine leistungsstarke Funktion, die Fehler…
Snippet öffnen →Rusts Match-Ausdruck ist ein leistungsstarkes Kontrollflusswerkzeug, das es Ihnen ermöglicht, einen Wert mit einer Reihe von Mustern zu vergleichen und Code basierend darauf auszuführen, welches Mu…
Snippet öffnen →Rust verwendet den Result-Typ für die Fehlerbehandlung ohne Ausnahmen. Result ist ein Enum mit zwei Varianten: Ok(T) für Erfolg, der einen Wert enthält, und Err(E) für Misserfolg, der eine Fehlerme…
Snippet öffnen →Rust verwendet ein Ownership-System, um Speicher effizient ohne Garbage Collection zu verwalten. Wenn Sie s1 an s2 zuweisen, wird das Eigentum an den Daten auf s2 übertragen, und s1 ist nicht mehr…
Snippet öffnen →Structs sind benutzerdefinierte Datentypen, die es Ihnen ermöglichen, verwandte Werte zusammenzufassen. Sie ähneln Klassen in anderen Sprachen, jedoch ohne Methoden. In diesem Beispiel definieren w…
Snippet öffnen →Enums ermöglichen es dir, einen Typ zu definieren, der einen von mehreren Varianten sein kann. In diesem Beispiel kann Direction North, South, East oder West sein. Jede Variante ist ein unterschied…
Snippet öffnen →Der impl-Block ermöglicht es dir, Funktionen und Methoden mit einer Struct zu verknüpfen. Methoden ähneln Funktionen, haben aber immer self als ersten Parameter. Die new-Funktion dient als Konstruk…
Snippet öffnen →Rust erlaubt es dir, Schleifen mit einem Lifetime-Spezifizierer wie 'outer zu benennen. Dies ermöglicht es dir, aus verschachtelten Schleifen von der äußeren Schleife auszubrechen. break ohne Label…
Snippet öffnen →Tupel gruppieren mehrere Werte unterschiedlicher Typen in einen einzigen zusammengesetzten Typ. Du kannst ein Tupel mittels Pattern Matching in einzelne Variablen destrukturieren. Jede Position im…
Snippet öffnen →Vektoren sind dynamische Arrays, die von der Standardbibliothek bereitgestellt werden. Du kannst sie mit Vec::new() erstellen und Elemente hinzufügen, oder das vec!-Makro für schnelle Initialisieru…
Snippet öffnen →Funktionen sind wiederverwendbare Codeblöcke in Rust. Sie werden mit dem Schlüsselwort `fn` definiert, gefolgt vom Funktionsnamen, Parametern in Klammern und einem optionalen Rückgabetyp. Parameter…
Snippet öffnen →If-Ausdrücke in Rust funktionieren ähnlich wie in anderen Sprachen, haben aber einen wesentlichen Unterschied: Sie sind Ausdrücke, die Werte zurückgeben. Jeder Zweig muss den gleichen Typ ergeben,…
Snippet öffnen →Arrays in Rust sind Sammlungen fester Größe mit Elementen desselben Typs. Sie werden mit eckigen Klammern deklariert, wobei Typ und Länge durch ein Semikolon getrennt werden. Auf Elemente wird mit…
Snippet öffnen →Rust hat mehrere Skalartypen, die einzelne Werte repräsentieren. Ganzzahlen gibt es in vorzeichenbehafteten (i) und vorzeichenlosen (u) Varianten mit Größen von 8 bis 64 Bits. Vorzeichenbehaftete G…
Snippet öffnen →Rust unterstützt drei Arten von Kommentaren. Einzeilige Kommentare beginnen mit `//` und gelten bis zum Ende der Zeile. Mehrzeilige Kommentare werden zwischen `/*` und `*/` eingeschlossen und könne…
Snippet öffnen →Rust hat zwei Haupt-Zeichentypen: den besessenen String und die geliehene String-Scheibe (&str). String ist heap-zugewiesen und erweiterbar, während &str eine Referenz auf String-Daten ist (entwede…
Snippet öffnen →Closures sind anonyme Funktionen, die ihre Umgebung erfassen. In Kombination mit Iteratoren ermöglichen sie leistungsstarke funktionale Programmiermuster. Die filter-Methode verwendet eine Closure,…
Snippet öffnen →Die use-Anweisung bringt Elemente in den Gültigkeitsbereich und macht den Code sauberer. Du kannst einzelne Elemente importieren oder verschachtelte Pfade mit geschweiften Klammern verwenden. Das s…
Snippet öffnen →HashMap speichert Schlüssel-Wert-Paare mit O(1) durchschnittlicher Suchzeit. Die entry-API ist leistungsstark für Einfügen-oder-Aktualisieren-Muster. or_insert gibt eine veränderliche Referenz auf…
Snippet öffnen →Option<T> repräsentiert einen Wert, der existieren könnte oder auch nicht, und vermeidet Null-Referenzen. Some enthält einen Wert, None repräsentiert Abwesenheit. Die if let-Syntax bietet prägnante…
Snippet öffnen →