capypad
0 Tage Serie
rust / beginner
Snippet

Tupel-Erstellung und Destrukturierung

Tupel in Rust sind Sammlungen fester Größe, die Werte verschiedener Typen halten können. Auf jedes Element wird über seine Position zugegriffen (Index beginnt bei 0). Tupel können durch Pattern Matching mit let-Statements destrukturiert werden, was das Extrahieren einzelner Werte in separate Variablen ermöglicht. Das Unterstrich-Muster _ erlaubt es, ungewollte Werte zu ignorieren.

snippet.rs
rust
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
fn main() {
// Creating tuples
let person: (&str, i32, bool) = ("Alice", 30, true);
let mixed = (42, 3.14, 'A', "text");
// Accessing elements by index
println!("Age: {}", person.1);
// Destructuring with let
let (name, age, is_student) = person;
println!("{} is {} years old", name, age);
// Ignoring tuple elements with _
let (num, _, char_val, _) = mixed;
println!("Number: {}, Char: {}", num, char_val);
// Destructuring in function parameters
print_coordinates(&(10, 20));
}
 
fn print_coordinates(point: &(i32, i32)) {
let (x, y) = point;
println!("X: {}, Y: {}", x, y);
}
Erklärung
1
let person: (&str, i32, bool)
Typisiertes Tupel mit String, Integer und Boolean
2
person.1
Greift auf das zweite Element (Alter) per Index zu
3
let (name, age, is_student) = person;
Destrukturiert Tupel in drei separate Variablen
4
let (num, _, char_val, _) = mixed;
Destrukturiert während Elemente mit Unterstrich ignoriert werden