C言語ライクな列挙型
列挙型はC言語の列挙型のような使い方をする事もできます。
// 使用されていないコードよる警告を隠すアトリビュート
#![allow(dead_code)]
// 値を明示しない場合、0から整数が順に入ります。
enum Number {
Zero,
One,
Two,
}
// 値を明示する場合
enum Color {
Red = 0xff0000,
Green = 0x00ff00,
Blue = 0x0000ff,
}
fn main() {
// 列挙型の中身は整数としてキャストできます。
println!("zero is {}", Number::Zero as i32);
println!("one is {}", Number::One as i32);
println!("roses are #{:06x}", Color::Red as u32);
println!("violets are #{:06x}", Color::Blue as u32);
}