These ampersands represent references, and they allow you to refer to some value without taking ownership of it.
从底层实现看,C++ 引用和 Rust 引用都基于指针,机器码往往一样,所以"底层是指针"这一点相同。但从语义保证看,区别巨大:C++ 引用没有"始终有效"的保证,允许悬空、允许别名修改;Rust 则强制"要么多个只读引用,要么一个可变引用",靠借用检查器编译期强制保证安全。