mut foo: T
nghĩa là bạn có một biến được gọi foo
là a T
. Bạn được phép thay đổi những gì biến đề cập đến :
let mut val1 = 2;
val1 = 3;
let val2 = 2;
val2 = 3;
Điều này cũng cho phép bạn sửa đổi các trường của cấu trúc mà bạn sở hữu:
struct Monster { health: u8 }
let mut orc = Monster { health: 93 };
orc.health -= 54;
let goblin = Monster { health: 28 };
goblin.health += 10;
foo: &mut T
nghĩa là bạn có một biến tham chiếu đến ( &
) một giá trị và bạn được phép thay đổi ( mut
) giá trị được tham chiếu (bao gồm các trường, nếu đó là một cấu trúc):
let val1 = &mut 2;
*val1 = 3;
let val2 = &2;
*val2 = 3;
Lưu ý rằng &mut
chỉ có ý nghĩa với một tham chiếu - foo: mut T
không phải là cú pháp hợp lệ. Bạn cũng có thể kết hợp hai định nghĩa ( let mut a: &mut T
), khi nó hợp lý.
const
vàpointee
const .