Rust 使用';mut';铁锈中的关键词

Rust 使用';mut';铁锈中的关键词,rust,Rust,我有一个关于Rust语言中“mut”用法的问题 use std::io; fn main() { println!("Guess the number!"); println!("Please input your guess."); let mut guess = String::new(); io::stdin() .read_line(&mut guess) .expect("Failed to read li

我有一个关于Rust语言中“mut”用法的问题

use std::io;

fn main() {
    println!("Guess the number!");

    println!("Please input your guess.");

    let mut guess = String::new();

    io::stdin()
        .read_line(&mut guess)
        .expect("Failed to read line");

    println!("You guessed: {}", guess);
}

当变量guess已经声明为'mut'时,为什么我们应该在read_line()的函数调用中再次用'mut'限定它?

。read_line
期望可变引用,因此必须创建变量的
&mut
;代码的读取频率比编写频率高很多。调用中的
&mut
是为了让阅读代码的人清楚地知道,此特定指令可能会更改值。