Einführung
In diesem Lab haben wir ein C-ähnliches Beispiel in Rust, das zeigt, wie man enum wie C-ähnliche Enums verwendet, einschließlich Enums mit impliziten und expliziten Diskriminatoren.
Hinweis: Wenn das Lab keinen Dateinamen angibt, können Sie einen beliebigen Dateinamen verwenden. Beispielsweise können Sie
main.rsverwenden und es mitrustc main.rs &&./mainkompilieren und ausführen.
C-ähnlich
enum kann auch als C-ähnliche Enums verwendet werden.
// Ein Attribut, um Warnungen für nicht genutzten Code zu unterdrücken.
#![allow(dead_code)]
// enum mit implizitem Diskriminator (beginnt bei 0)
enum Number {
Zero,
One,
Two,
}
// enum mit explizitem Diskriminator
enum Color {
Red = 0xff0000,
Green = 0x00ff00,
Blue = 0x0000ff,
}
fn main() {
// `enums` können als Ganzzahlen umgewandelt werden.
println!("zero is {}", Number::Zero as i32);
println!("one is {}", Number::One as i32);
println!("roses are #{:06x}", Color::Red as i32);
println!("violets are #{:06x}", Color::Blue as i32);
}
Zusammenfassung
Herzlichen Glückwunsch! Sie haben das C-ähnliche Lab abgeschlossen. Sie können in LabEx weitere Labs ausprobieren, um Ihre Fähigkeiten zu verbessern.