Easy Rust #16 const, static


Easy Rust #16 const, static

const와 static 키워드에 대해 알아보겠습니다. const 변수는 코드의 처음부터 끝까지 생존합니다. 이걸 lifetime이라고 하는데 뒤에서 더 알아보겠습니다. a = MAX_SCORE, b = MAX_SCORE로 선언하고 주소를 찍어보면 주소가 다른 것을 확인할 수 있습니다. 반면 static 키워드의 경우 const 키워드와 마찬가지로 프로그램의 처음부터 끝까지 생존합니다. 차이점은 static은 메모리 한 곳을 계속 쓰겠다라고 선언하는 키워드라고 생각하면 됩니다. 그러니까 const 키워드는 이 값을 모두가 '각자' 사용할 때 쓴다고 보면 되고 static 키워드는 이 값을 모두가 '같이' 사용할 때 쓴다고 생각하면 됩니다. static 키워드의 경우 mut을 붙여 변경 가능하게 할 수 있습니다. 그런데 이렇게 해서 값을 바꾸는 행동은 안전하지 않기 때문에 위의 코드처럼 unsafe를 사용하여 변경하면 됩니다. unsafe는 웬만하면 사용을 추천하지 않습니다. 그리고 ...


#rust #프로그래밍

원문링크 : Easy Rust #16 const, static