ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 러스트의 소유권 시스템
    Search: Rust Rust 2023. 8. 11. 20:28

     

     

    러스트의 소유권 시스템의 기본 3규칙

    규칙1
    규칙2
    규칙3

     

    규칙1 '소유권'과 '소유자'

    값에는 '소유권'이 있으며 변수는 값의 '소유자'가 된다.

    값은 순수 정수, 실수, 문자열 등 이외에도, 개체도 포함한다. 정확히는 주소값이다.
    그 주소값은 변수에 저장되어 Rw(읽기 쓰기)가능하도록 사용되어진다.

    러스트는 그 주소값을 '소유권'이라는 제한된 관리 규칙을 만들어 코딩 실수를 줄여 안전성을 올렸다.

     

     

    규칙2 소유권 이동

    소유권은 이동할 수 있지만 '소유자'는 1개(1개의 변수)뿐이다.

    주소값은 누구나 가질 수 있지만, 러스트는 오직 1개의 변수만 '소유자'로서 주소값을 가질 수 있도록 했다.

    개체를 가르키는 변수 값을 다른 곳에 대입했을 때 '소유권'이 이동 된다(함수 호출 할 때 인자를 넘기면 이동 된다). 기본은 이동이지만 일시적인 빌림(참조) 방식으로 사용권을 공유하는 것도 가능하다.

    '소유권 이동 Ex'
    '소유권 빌림(참조) Ex'

     

     

    규칙3 유효한 범위

    '소유자'가 유효한 범위(Scope)를 벗어나면  값은 파기된다.

    변수의 생존주기가 있듯이, 이와 유사하게 '소유자'도 함수나 블록을 벗어나면 파기 된다.

     

     

    기타

    '가변 참조자 Ex'

     

    'Rust' 카테고리의 다른 글

    가변 참조자 Ex  (0) 2023.08.11
    소유권 빌림(참조) Ex  (0) 2023.08.11
    소유권 이동 Ex  (0) 2023.08.11
    Rust 개요  (0) 2023.07.23

    댓글