Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- PC엔진
- analogue
- 슈퍼패미컴
- PSP
- mobilesuit
- fpga
- ps4
- 컨트롤러
- 3DS
- Game Gear
- 패미컴
- 게임보이
- ensemble
- 슈퍼마리오
- 게임기어
- Apple II
- GOG
- 티스토리챌린지
- 건담
- 메가드라이브
- YS
- 닌텐도 스위치
- mister
- 앙상블
- MSX
- LMD
- snes
- 오블완
- 이스
- 모빌슈트
Archives
- Today
- Total
Just a Blog
[Rust 시험] reassign to borrowed variable 본문
테스트 코드
fn main() {
let mut s = String::from("ABCDEF");
let hello = &s[0..2];
let world = &s[2..];
println!("{} {}", hello, world);
s = String::from("1234567891011");
println!("s:{}", s);
println!("{} {}", hello, world); // 이 라인을 삭제하지 않으면 에러 발생
}
결과
Compiling playground v0.0.1 (/playground)
error[E0506]: cannot assign to `s` because it is borrowed
--> src/main.rs:6:5
|
3 | let hello = &s[0..2];
| - borrow of `s` occurs here
...
6 | s = String::from("1234567891011");
| ^ assignment to borrowed `s` occurs here
7 | println!("s:{}", s);
8 | println!("{} {}", hello, world);
| ----- borrow later used here
For more information about this error, try `rustc --explain E0506`.
error: could not compile `playground` due to previous error
에러코드 E0506: An attempt was made to assign to a borrowed value
그런데 마지막 줄(println!("{} {}", hello, world);)만 삭제하고 's' 출력부분(println!("s:{}",s);)을 살리면 그건 또 실행됨.
AB CDEF
s:1234567891011
Comments