Rustの型
ヌルポを踏まないなどの型安全性、メモリ上のサイズを制御できる効率性などの特徴を持つ
Rustの整数型
IEEE浮動小数点数
単精度
f32
倍精度
f64
/mrsekut-book-4873118557/076
boolean
/mrsekut-book-4873118557/078
文字列型
Rustの文字列型
タプル
(char, u8)
要素は異なる型でも良い
()
unit
構造体
struct S { x: f32 }
名前付き
fieldを持つ
struct T(i32, char)
tuple型の構造体
struct E
unit型の構造体
fieldを持たない
カニ本 第1版 9章
列挙型
RustのEnum型
ポインタ系
Rustのポインタ型
Box, &i32, &mut i32
&Any, &mut Read
trait object
指定されたmethodの集合を実装した任意の値への参照
fn(&str, usize) -> isize
関数へのポインタ
カニ本 第1版 14章
配列系
/mrsekut-book-4873118557/083 (3.4 配列、ベクタ、スライス)
Rustの配列
固定長配列[T; N]
Rustでは「配列」と言った時、基本的に固定長配列を指す
Vec<T>型
heap上に動的に確保される
伸長可能
Rustのslice型
&[T], &mut [T]
配列やベクタの一部に対する参照
RustのOption<T>型
RustのResult<T, E>型
never型
!
https://blog-dry.com/entry/2020/11/02/000313
変換
&str→u8
as_bytes()を使う
https://www.shuttle.rs/blog/2022/07/28/patterns-with-rust-types
rustのnewtype pattern
/mrsekut-book-4873118557/070 (3章 基本的な型)
https://qiita.com/moratorium08/items/0196afe8cb7e225e1e9d