相关疑难解决方法(0)

Rust中星号符号的用法是什么?

我是Rust的新手,我不理解以下代码:

let mut x = 5;
{
    let y = &mut x;
    *y += 1;
}
println!("{}", x);
Run Code Online (Sandbox Code Playgroud)

Rust网站的说明:

您还会注意到,我们增加了一个星号(*前面)y,使得它*y,这是因为y是一个&mut参考。您还需要使用astrisks [sic]访问引用的内容。

如果*y是参考,以下代码为何起作用

fn main() {
    let mut x = 5;
    {
        let y = &mut x;
        println!("{}", y);
    }
}
Run Code Online (Sandbox Code Playgroud)

我知道我没有在这里修改值,但是有什么区别,为什么y += 1;不起作用?

rust

4
推荐指数
1
解决办法
2206
查看次数

标签 统计

rust ×1