S-JIS[2024-09-26/2024-10-04] 変更履歴

Rust Box構造体

Ruststd::boxed::Boxのメモ。


概要

Box構造体は、ヒープ(グローバル領域)上にメモリーを確保する構造体
Box構造体はstd::preludeに含まれているので、useしなくても使える。


BoxはDerefトレイトを実装しているので、Box型の変数からBox内部のインスタンスのメソッドが呼べる。[2024-10-04]

struct MyStruct {}

impl MyStruct {
    fn example(&self) {
        print!("example");
    }
}

fn main() {
    let s: Box<MyStruct> = Box::new(MyStruct {});
    s.example();	// sはBox型の変数なのに、Boxの中のMyStructのメソッドが直接呼び出せる
}

stdへ戻る / Rustへ戻る / 技術メモへ戻る
メールの送信先:ひしだま