gpt4 book ai didi

rust - 为什么我们需要取消引用匹配中的可变引用来更改它?

转载 作者:行者123 更新时间:2023-11-29 08:02:28 26 4
gpt4 key购买 nike

我正在阅读 The Rust Programming Language还有一件事不清楚:

let mut mut_value = 6;
match mut_value {
ref mut m => {
*m += 10;
println!("We added 10. `mut_value`: {:?}", m);
},
}

为什么我们需要取消引用它来改变它?我们已经有了一个可变引用。

最佳答案

引用是地址指针。如果您只是执行 m += 10,您将更改内存地址(如果没有 unsafe,Rust 不允许您这样做)。您要做的是更改 m 处的。那么值(value)在哪里呢?跟随指针!您可以通过取消引用来做到这一点。

关于rust - 为什么我们需要取消引用匹配中的可变引用来更改它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47542053/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com