Box, スタックとヒープ
Rustにおいて、すべての値はデフォルトでスタックに割り当てられます。Box<T>
を作成することで、値を ボックス化 、すなわちヒープ上に割り当てることができます。ボックスとは正確にはヒープ上におかれたT
の値へのスマートポインタです。ボックスがスコープを抜けると、デストラクタが呼ばれて内包するオブジェクトが破棄され、ヒープメモリが解放されます。
ボックス化された値は*
オペレータを用いてデリファレンスすることができます。これにより一段と直接的な操作が可能になります。