본문 바로가기

개발 이야기/Rust 언어 이야기

Rust 에서 메모리 관리가 장점인 이유의 예제 소스

728x90

Rust 언어가 메모리 관리가 기존 C/C++보다 좋다는데~

아래의 내용과 코드를 보시면 한번에 이해가 갑니다.

 

다음 링크의 내용을 복붙하면,

=> hanbum.gitbooks.io/rustbyexample/content/scope/move.html

 

13.2 Ownership and moves

변수들이 자체 자원을 해제할 책임을 갖기 때문에, 자원은 오직 하나의 소유자를 갖는다, 이는 또한 리소스가 한번 이상 해제되는 것을 방지한다. 주목할 점은 모든 변수가 자원을 소유하는건 아니라는 점이다.

 

할당을 수행할 때 (let x = y )나 함수에 인자를 값으로 전달할 때(foo(x)), 자원의 소유권은 전달된다. Rust에서는 이를 이동(move)이라고 한다.

자원의 이동 후에, 이전 소유주는 더 이상 사용할 수 없다. 이는 dangling 포인터가 생성되는 것을 회피한다.

 

위 내용을 읽어보시고,

하기의 코드를 보시고 주석을 보시면

Rust 언어의 메모리 관리의 기본적인 개념과 원리를 이해하기가 좋네요.