Rust, 튜플
튜플은 데이터가 쌍으로 있는 구조이다. 이것의 구분은 괄호를 사용하며, ("hello", 4) 이런 형태로 가능하다. 튜플의 경우는 array와는 달라서, 각각의 item이 다른 타입을 가져갈 수 있고, 튜플의 index로는 t.0, t.1과 같이 "." 을 이용해야 하고 python과 같이 t[0], t[1]은 허용되지 않는다. 그리고 인수로 constant만 올수 있다. t.i과 같이 변수는 저자리에 올수 없다. fn main() { let human = ("Knight",true, 2500u32); println!("{:?}", human); println!("{} {} {}", human.0, human.1, human.2); let (name, _, hp) = human; println!("{}..
더보기
Rust, 자료형 Numeric(정수)
Rust는 C와 같은 정적언어이다. 하지만, type inference(이하 타입추론)으로 인해서, 문법자체는 C만큼 strict하지는 않고, compiler가 type을 추측해서, 자동으로 컴파일을 하게 된다. python이나 javascript같은 경우는 완전한 동적언어라, 컴파일 단계에서는 type이 맞는지 틀리는지 검사를 하지 않는다. duck type이라고 해서, 막상 실행될때 이게 맞는지 틀리는지 확인이 가능하기때문에, 이것이 개발 속도는 빠르지만, 이 부분에서 잠재적인 오류가 있을 수도 있고, 이를 막기 위해서는 모든 부분을 검사하는 테스트셋을 가져야지 된다는 의미이다. 동적언어의 장점이자 단점이기도 한데, Rust는 정적언어이기때문에, 이 타입 관련 오류들은 컴파일 시간에 잡아낸다. 그게 ..
더보기