Rust(r3)

해당 리비전 수정 시각: ()
[주의!] 문서의 이전 버전(에 수정)을 보고 있습니다. 최신 버전으로 이동
이 문서는 분류가 되어 있지 않습니다. 분류:분류에서 적절한 분류를 찾아 문서를 분류해주세요!
fn main() {
  println!("hello, world!");
}
파일:홈페이지 아이콘.svgcrates.io[1] 파일:GitHub 아이콘 light.svg파일:GitHub 아이콘 dark.svggithub
메모리 안전성을 중요시 여기는 언어이다. 모질라 제단에서 관리하다가 러스트 제단으로 넘어왔다.

페리스라는 마스코트가 있다.

1. 특징 [편집]

1.1. 소유권 [편집]

러스트를 배울 때 나오면 가장 때려치고 싶게 만드는 원흉. 메모리를 바로바로 혜지하는 언어 특성상 소유권은 메우 중요한 계념이다.

1.1.1. 스코프 [편집]

가장 중요한 계념 중 하나는 스코프[2] 밖을 벗어나면 스코프 안에서 정의된 변수는 사용할 수 없다인데 예를들어
fn main () {
  {
    let a = "앙되 내 수명은 여기까지야";
  }
  println!("{a}");
}
를 실행하면 컴파일 에러가 난다.[3]

1.1.2. 함수에 넘기기 [편집]

또한 어떤 함수에 인자로 값을 넘기면 그 값의 소유권은 만료된다.
#syntax rust
fn main() {
let a = "앙되 내가 함수의 인자로 들어감으로서 이 함수로 돌아오지 못하게 되었어."
소유권은내것(a);
println("{a}")
}
fn 소유권은내것 (a:&str) {
}
이를 실행해도 컴파일 에러가 나는데 a를 함수에 넘긴 다음에 사용하려 하였기 때문이다. 이럴 때는 to_owned(), clone()등을 써서 값을 복사함으로서 해결할 수 있지만 더 좋은 방법이 있다.

1.1.3. &참조자 [편집]

어떤 함수의 값을 넘길 때
#syntax rust
fn main() {
let a = "참조자를 사용함으로서 나는 여전히 살아있다고."
소유권좀_빌려주세요(&a);
println("{a}")
}
fn 소유권은내것 (a:&&str) {
}
이렇게 함수에 넘길 때 참조자를 사용하면 소유권을 유지할 수 있다. [4]

2. 그 외 [편집]

  • 컴파일 언어이다.
  • 컴파일 시간에 대부분의 런타임 에러를 잡아낸다.
[1] rust계의 npm[2] {랑 }사이[3] 런타임 에러가 아니다![4] 사실 &str은 이미 참조자가 붙어있어서 상관없긴 하지만 예시는 예시로만 보도록 하자???:선생님 예시가 이상해요

라이선스를 별도로 명시하지 않은 문서는 CC BY-SA 4.0에 따라 이용할 수 있습니다.
자세한 내용은 다올위키 라이선스 정책을 확인하시기 바랍니다.

기여하신 문서의 저작권은 각 기여자에게 있으며, 각 기여자는 기여하신 부분의 저작권을 갖습니다.

오픈 소스가 아닌 다올위키의 고유한 디자인을 무단으로 도용하는 것과, 운영 문서를 포함한 모든 문서를 라이선스를 지키지 않고 무단으로 가져가는 행동은 저작권 위반이며 법적 책임을 물 수 있습니다.