0 Tage Serie
Code-Bibliothek

Rust für Anfänger

Lies diese Rust-Snippets für Anfänger Zeile für Zeile — jedes kommt mit einer Erklärung, was der Code tut und warum.

Rust · Anfänger

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.

Arrays & ListenDatentypen
Snippet öffnen →
Rust · Anfänger

Grundlegende Funktionen definieren

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…

FunktionenSyntax
Snippet öffnen →
Rust · Anfänger

Variablen und Unveränderlichkeit

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…

SyntaxDatentypen
Snippet öffnen →
Rust · Anfänger

Kontrollfluss mit If-Ausdrücken

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…

KontrollstrukturenSyntax
Snippet öffnen →
Rust · Anfänger

Einfache Fehlerbehandlung mit Option

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)…

FehlerbehandlungDatentypen
Snippet öffnen →
Rust · Anfänger

Einfache Enums definieren

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.

SyntaxDatentypen
Snippet öffnen →
Rust · Anfänger

Ownership verstehen: Der Move

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.

Memory Management
Snippet öffnen →
Rust · Anfänger

Variablen und Mutable in Rust

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…

SyntaxDatentypen
Snippet öffnen →
Rust · Anfänger

Musterabgleich mit Match

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…

KontrollstrukturenSyntax
Snippet öffnen →
Rust · Anfänger

Fehlerbehandlung mit dem Result-Typ

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…

FehlerbehandlungFunktionen
Snippet öffnen →
Rust · Anfänger

Ownership verstehen

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…

Memory ManagementBest Practices
Snippet öffnen →
Rust · Anfänger

Enums in Rust verstehen

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…

SyntaxDatentypen
Snippet öffnen →
Rust · Anfänger

Methoden mit impl implementieren

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…

SyntaxFunktionen
Snippet öffnen →
Rust · Anfänger

Tupel und Destrukturierung

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…

DatentypenSyntax
Snippet öffnen →
Rust · Anfänger

Mit Vektoren arbeiten

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…

Arrays & ListenDatentypen
Snippet öffnen →
Rust · Anfänger

If-Ausdrücke und bedingte Verzweigung

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,…

KontrollstrukturenSyntax
Snippet öffnen →
Rust · Anfänger

Grundlegendes zu Skalaren in Rust

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…

DatentypenSyntax
Snippet öffnen →
Rust · Anfänger

Verstehen von String vs &str in Rust

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…

DatentypenMemory Management
Snippet öffnen →
Rust · Anfänger

Verwendung von Closures mit Iteratoren

Closures sind anonyme Funktionen, die ihre Umgebung erfassen. In Kombination mit Iteratoren ermöglichen sie leistungsstarke funktionale Programmiermuster. Die filter-Methode verwendet eine Closure,…

FunktionenSyntax
Snippet öffnen →
Rust · Anfänger

Umgang mit optionalen Werten mit Option

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…

DatentypenFehlerbehandlung
Snippet öffnen →
Rust · Anfänger

Musterabgleich mit match

Das match-Schlüsselwort ermöglicht Musterabgleich gegen Werte. Es vergleicht die Eingabe mit jedem Muster und führt den Code des ersten übereinstimmenden Zweigs aus. Der Unterstrich _ ist ein Platz…

Kontrollstrukturen
Snippet öffnen →
Rust · Anfänger

Ownership-Regeln auf einen Blick

Ownership ist Rusts einzigartiges Speicherverwaltungssystem. Wenn du s1 an s2 zuweist, wird Ownership verschoben. s1 ist dann nicht mehr gültig. Borrowing mit & ermöglicht Referenzieren ohne Owners…

Memory Management
Snippet öffnen →
Rust · Anfänger

Deinen ersten Unit-Test schreiben

Das #[test]-Attribut markiert eine Funktion als Test. assert_eq! prüft, dass zwei Werte gleich sind. Tests werden mit cargo test ausgeführt und verifizieren, dass dein Code korrekt funktioniert.

Testing
Snippet öffnen →