Rustの型
ヌルポを踏まないなどの型安全性、メモリ上のサイズを制御できる効率性などの特徴を持つ
IEEE浮動小数点数
単精度
f32
倍精度
f64
boolean
文字列型
タプル
(char, u8)
要素は異なる型でも良い
()
unit
構造体
struct S { x: f32 }
名前付き
fieldを持つ
struct T(i32, char)
tuple型の構造体
struct E
unit型の構造体
fieldを持たない
列挙型
enum Attend { OnTime, Late(u32) }
ADTの和の表現に使える
ポインタ系
Box, &i32, &mut i32
&[u8], &mut [u8]
スライスへの参照
配列やベクタの一部への参照
ポインタと長さからなる
&Any, &mut Read
指定されたmethodの集合を実装した任意の値への参照
fn(&str, usize) -> isize
関数へのポインタ
配列系
固定長配列
[f64; 4]
要素は全て同じ型
配列
一種類の型のオブジェクトの集合
メモリ上の連続した領域に保存されている
サイズはコンパイル時に決定されている
静的
code:rust
slice
サイズはコンパイル時に決定されていない
動的(DST)
「データへのポインタ」、「長さ」で構成されている
never型
!
変換
&str→u8
as_bytes()を使う