Rust(비교)

r22 vs r23
......
4848 println!("{a}");
4949} }}}를 실행하면 컴파일 에러가 난다.[* 런타임 에러가 아니다!] 왜냐하면 스코프 안에서 선언 된 a를 수명이 끝난 스코프 밖에서 값을 조회하였기 때문이다.
5050==== 제내릭 라이프타임 ====
51===== 참조 둘 중 하나를 반환하는 함수 =====
5152'''지옥의 시작'''
5253{{{#!syntax rust
5354fn longest<'a> (s1:&`a str,s2:&`a str) -> &`a str {
......
8182
8283"아니 그러면 애초부터 result를 longest의 리턴으로 못넣게 하면 되잖아." 그게 수명주기 명시다. 지금 longest의 리턴값은 s2의 수명주기와 같다.[* `a로 수명주기를 명시한것 중이서 s2가 수명이 가장 짧기 때문]
8384
85"그럼 인풋중 수명이 더 짧은 것을 리턴의 수명으로 정하면 되잖아?" [[https://github.com/dtolnay/rust-faq#why-arent-function-signatures-inferred|할 수 있는데 안한다]](...) ~~아니 왜요?~~
86
8487== 그 외 ==
8588 * 컴파일 언어이다.
8689 * 컴파일 시간에 대부분의 런타임 에러를 잡아낸다.