Language/Rust

3장. Rust 변수

미토니 2020. 6. 8. 18:19

 

1. 변수와 상수

1) 변수

rust의 변수는 기본적으로 불변성을 가집니다.

한 번 선언된 값을 가진 변수는 다른 값을 가질 수 없다는 뜻입니다. 

만약 변수의 값의 수정이 필요한 경우에는 mut라는 구문을 추가해줍니다.

 

//불변성 변수
let x = 5;

//가변성 변수
let mut y = 5;

 

아래의 예시로 설명하겠습니다.

위의 코드를 실행시키면 x는 불변성 변수이기 때문에 변경할 수 없다는 에러가 발생합니다.

 

이번에는 mut를 사용하여 변수를 선언해보겠습니다.

제대로 값이 나오는 것을 확인할 수 있습니다.

 

2) 상수

흔히 우리가 알고 있는 상수는 변하지 않는 값을 갖는 것을 말합니다.

이 상수를 선언할 때는 const라는 키워드를 사용합니다.

그리고 상수 명명 규칙에 의해 모두 대문자로 작성합니다.

const PI: f64 = 3.14159

 

3) 쉐도잉

mut를 사용하지 않고 let으로 선언한 변수명을 한 번 더 선언하여
새 변수는 이전 변수를 참조하는 것을 쉐도잉이라고 합니다.

 

위에서 let으로 선언 없이 키워드를 바꾸려고 하면 불변성의 법칙에 의해 에러가 발생합니다.

하지만 계속 let으로 선언하면서 값을 참조한다면 같은 이름의 변수의 값을 바꿀 수 있습니다.

 

여기서 중요한 점은 쉐도잉을 사용한다면 데이터 타입이 바뀌어도 상관없습니다.

 

하지만 mut를 사용해서 선언한 변수에 다른 데이터 타입을 대입하는 것은 불가능합니다.

 

참고 사이트

https://doc.rust-lang.org/1.30.0/book/second-edition/ch03-01-variables-and-mutability.html

 

Variables and Mutability - The Rust Programming Language

Variables and Mutability As mentioned in Chapter 2, by default variables are immutable. This is one of many nudges Rust gives you to write your code in a way that takes advantage of the safety and easy concurrency that Rust offers. However, you still have

doc.rust-lang.org