Tour of Rust 목차

스마트 포인터

& 연산자로 이미 존재하는 데이터의 참조를 생성하는 기능과 더불어, Rust에서는 smart pointer라 불리는 참조 같은 struct를 생성하는 기능을 제공합니다.

고수준에서 보자면 참조는 다른 자료형에 대한 접근을 제공하는 자료형이라고 볼 수 있습니다. smart pointer가 일반적인 참조와 다른 점은, 프로그래머가 작성하는 내부 로직에 기반해 작동한다는 것입니다. 여러분(프로그래머)이 바로 smart한 부분을 담당하는 겁니다.

일반적으로 smart pointer는 struct가 *. 연산자로 역참조될 때 무슨 일이 발생할지 지정하기 위해 Deref, DerefMut, 그리고 Drop trait을 구현합니다.