Rust(비교)

r3 vs r4
......
1919}
2020}}}를 실행하면 컴파일 에러가 난다.[* 런타임 에러가 아니다!]
2121==== 함수에 넘기기 ====
22또한 어떤 함수에 인자로 값을 넘기면 그 값의 소유권은 만료된다.{{{#syntax rust
23fn main() {
24 let a = "앙되 내가 함수의 인자로 들어감으로서 이 함수로 돌아오지 못하게 되었어."
22또한 어떤 함수에 인자로 값을 넘기면 그 값의 소유권은 만료된다.{{{#!syntax rust
23fn main () {
24 let a = "앙되 내가 함수의 인자로 들어감으로서 이 함수로 돌아오지 못하게 되었어.";
2525 소유권은내것(a);
26 println("{a}")
26 println("{a}");
2727}
2828fn 소유권은내것 (a:&str) {
2929}
3030}}}이를 실행해도 컴파일 에러가 나는데 a를 함수에 넘긴 다음에 사용하려 하였기 때문이다. 이럴 때는 to_owned(), clone()등을 써서 값을 복사함으로서 해결할 수 있지만 더 좋은 방법이 있다.
3131==== &참조자 ====
3232어떤 함수의 값을 넘길 때
33{{{#syntax rust
33{{{#!syntax rust
3434fn main() {
3535 let a = "참조자를 사용함으로서 나는 여전히 살아있다고."
3636 소유권좀_빌려주세요(&a);
......