表現としてプリミティブ型と列挙型を定義することが可能であると思われますか?たとえば、インスタンスを作成するにはどうすればよいでしょうか、また、異なるプリミティブ型を処理するためにmatch文を使用するにはどうすればよいでしょうか?あなたが期待するものプリミティブ型は錆で
5
A
答えて
10
(この答えは0.9のようです)あなたはそれをやっていると思うものをかなりやっていません
。それはという名前の列挙型A
とf64
とi32
という名前のこれらのタイプを使用していません。型やその他のもの(変数など)は異なる名前空間を共有するため、気付かないかもしれません。オリジナルの列挙型の使用例:
enum A {
Float(f64),
Int(i32)
}
fn main() {
let x: A = Float(42.0);
let y: A = Int(7);
match x {
Float(value) => println!("got Float({})", value),
Int(value) => println!("got Int({})", value)
}
}
:実際
値これらのタイプのをラップするために
enum A {
f64,
i32
}
fn main() {
let x: A = f64;
let y: A = i32;
match x {
f64 => println!("got f64"),
i32 => println!("got i32")
}
}
を、あなたは「タプルのような変種」を使用する必要があります
3
やっていない、この出力のチェック:ただ単に定数の他の名前と同様に、列挙型の変異体として
enum A {
f64,
i32
}
fn main() {
let x:A = f64;
let y:A = i32;
println!("{}, {}", x as int, y as int);
}
f64
とi32
を。このようにして、CのenumよりもCのunionほど動作します。
関連する問題
- 1. プリミティブ型
- 2. プリミティブ型のプロモーション
- 3. 比較プリミティブ型
- 4. Hibernateプリミティブ型マッピング
- 5. プリミティブ型のスカラマップ値型
- 6. ClassLoaderでプリミティブ型を使用
- 7. 錆のデータ型のマッチング方法は?
- 8. イベントの非プリミティブ型
- 9. プリミティブ型のJavaクローンクラス
- 10. Javaコレクション。プリミティブ型はなぜですか?
- 11. C#のプリミティブ型/ Nullable型の型名
- 12. C++でプリミティブ型の型チェックエイリアスを作成するには?
- 13. Scalaプリミティブ型の上限型境界
- 14. Cassandraのプリミティブ型とオブジェクト型の保存
- 15. コンパイル時のプリミティブ変数型
- 16. パフォーマンス:typedefとプリミティブ型のラッパークラス?
- 17. プリミティブ型とIN演算子
- 18. NSCode:プリミティブ型のエンコーダとデコーダ
- 19. C++のプリミティブ型のリスト
- 20. のC#、反射とプリミティブ型
- 21. protobuf 3のプリミティブ型any
- 22. ScalaのAnyRefへのプリミティブ型
- 23. C++プリミティブ型の安全性
- 24. Objective-C setValue:cプリミティブ型のforKey
- 25. プリミティブ型の "value"のデフォルト値
- 26. mallocをプリミティブ型にキャスト
- 27. 錆と形質の多型(形質オブジェクト?)
- 28. プリミティブ型でテンプレートクラスを置き換える
- 29. AngularJSでプリミティブ型を注入する
- 30. だけがプリミティブ型または列挙型は、この文脈