티스토리 뷰
변수 선언
let 키워드를 이용하여 선언
기본적으로 불변성이며 가변적으로 사용하고 싶으면 mut 키워드 사용
let var1: i32 = 1;
let mut var2: i32 = 2;
var2 = 3;
상수
상수도 값이 불변하지만 변수와의 차이점은
1. const 키워드 사용
2. mut 비허용
3. 상수 표현식만 설정 가능, 함수호출의 결과값이나 그 외 실행시간에 의해 결정되는 값은 설정 불가능.
그리고 상수 명명 규칙에 따라 모든 단어를 대문자로 사용한다.
const VAR: u32 = 100000;
Shadowing
이전에 선언한 변수와 같은 이름의 새로운 변수를 선언할 수 있고 새로운 변수는 이전 변수를 shadow 함.
mut으로 선언하는 것과의 차이점은 불변성을 유지한다는 점, shadowing은 동일 이름의 변수를 사용하며 새로운 데이터타입으로 변경할 수 있음.
만약 변수에 문자열의 길이를 저장하고 싶다면 아래와 같은 코드로 작성할 수 있다.
//Shadowing 방식
let space = " ";
let space: usize = space.len();
//mut방식
let mut space = " ";
space = space.len();
Shadowing 방식으로 하면 본래 문자열의 길이를 저장할 목적인 space 변수를 shadow하여 사용할 수 있고,
mut방식을 이용했을 때는 당연하게도 오류가 발생한다.
참고 : rinthel.github.io/rust-lang-book-ko/ch03-01-variables-and-mutability.html
변수와 가변성 - The Rust Programming Language
2 장에서 언급했듯이, 기본 변수는 불변성입니다. 이것은 Rust가 제공하는 안전성과 손쉬운 동시성이라는 장점을 취할 수 있도록 코드를 작성하게끔 강제하는 요소 중 하나입니다. 하지만 여전히
rinthel.github.io
'Rust-Language' 카테고리의 다른 글
참조자와 빌림 (0) | 2021.04.03 |
---|---|
소유권(Ownership) (0) | 2021.04.02 |
제어문 (0) | 2021.03.30 |
함수 (0) | 2021.03.30 |
데이터타입 (0) | 2021.03.30 |