본문으로 바로가기
COMMUNITY모든 이야기

Rust에서 String 데이터를 함수로 전달 시 발생하는 borrow checker 에러

빗방울 2026.10.31 01:19 1분 읽기 조회 13 · 추천 2

토이 프로젝트로 간단한 텍스트 처리기를 만들고 있습니다. 입력받은 문자열을 수정하여 다시 반환하는 함수를 구현하려 합니다.

코드:

fn main() {
    let mut text = String::from("Hello");
    modify_text(&mut text);
    println!("{}", text);
}

fn modify_text(s: &mut String) {
    s.push_str(" World");
    let length = s.len();
    println!("Length is {}", length);
}

시도: 함수 인자의 타입을 `String`으로 변경해 보았으나 소유권 이전 문제로 `main` 함수에서 더 이상 `text` 변수를 사용할 수 없었습니다.

질문: 가변 참조자를 통해 문자열을 수정할 때, 왜 메서드를 호출할 수 없으며 어떻게 수정해야 합니까?

모든 이야기1511

가벼운 안부부터 깊은 생각까지, 함께 나눠요.

글쓰기
총 1511개의 이야기
댓글