Box — 힙에 저장하는 포인터 타입

Box — 힙에 저장하는 포인터 타입

Box<T>는 값을 힙(heap)에 저장하고 그 소유권을 갖는 포인터 타입이에요. 스택에 크기가 가변적이거나 재귀적인 타입을 저장할 때 특히 유용해요.

출처: Rust 공식 문서

본문

pub struct Box<T, A = Global>(/* private fields */)
    where A: Allocator,
          T: ?Sized;

Box::new(x)로 값을 힙에 올리고, 스코프를 벗어나면 자동으로 메모리를 해제해요. 단 하나의 소유권만 갖기 때문에 "단일 소유 힙 포인터"라고 불러요. 트레이트 객체(예: Box<dyn Trait>)로도 쓸 수 있어요.

더 알아보기 (Learn more)

Rust 공식 문서