gpt4 book ai didi

rust - 变量绑定(bind)和变量之间的区别?

转载 作者:行者123 更新时间:2023-11-29 08:01:00 25 4
gpt4 key购买 nike

在我使用 Rust 的过程中,我看到一些人称它们为变量,而另一些人称它们为变量绑定(bind)——甚至绑定(bind)作为引用它的一种简短方式。

在 Rust 书中,it’s stated :

In many languages, a variable binding would be called a variable, but Rust’s variable bindings have a few tricks up their sleeves. For example the left-hand side of a let statement is a ‘pattern’, not a variable name.

在本书的后面,他们继续将变量绑定(bind)称为绑定(bind)或变量。我在 Stackoverflow 上也注意到了这一点 - 似乎它们可以互换使用。

问题是,有时将绑定(bind)称为变量是否比后者更正确?对于更正确的术语——变量绑定(bind)——我假设这两个词是不同的词——你应该遵循他们书中的词。我很困惑。

最佳答案

A variable bindingstatement将变量绑定(bind)到名称;在声明中

let x = 1;

整个语句是变量绑定(bind),x 是变量绑定(bind)到的名称。在此声明之后,您可以将 x 称为变量绑定(bind)(但不是变量绑定(bind))。

您提出的片段只是强调了一个事实,即在 Rust 中您可以使用变量绑定(bind)来做各种事情,因为 let 语句受模式匹配的影响,例如

let (a, b, c, s) = (1u8, 2usize, 3i32, "foo");

一次分配 4 个不同类型的变量。

编辑:绑定(bind) 在 Rust 中如此流行的术语可能是有原因的,尽管 variable 在 Rust 中是一个更成熟的术语编程;因为在 Rust 中绑定(bind)默认是不可变的,所以对于没有编程背景的人来说称它们为变量可能会很奇怪。

关于rust - 变量绑定(bind)和变量之间的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41659471/

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