Box とは
Rust の Box は、オブジェクトのメモリをヒープに確保すること
スタック領域とヒープ領域
-
スタック: 変数などが確保される領域。
-
ヒープ: 動的なメモリ。メインメモリから欲しいメモリ量を渡して使う。
一般的にスタック<ヒープで大きなメモリを確保する。
Box の使い方
let p0: Box<Point> = Box::new(Point{
x: 1,
y: 2,
});
println!("{}, {}", p0.x, p0.y); //1 2
Box::new()
に構造体を渡すと、それに対する Box が作成されます。