34
我與Rust玩,我試圖訪問這些代碼的第一個命令行參數:「無法移出索引內容」是什麼意思?
use std::env;
fn main() {
let args: Vec<_> = env::args().collect();
let dir = args[1];
}
而且我得到這個錯誤:如果我將其更改爲let ref dir
error[E0507]: cannot move out of indexed content
--> src/main.rs:5:15
|
5 | let dir = args[1];
| --- ^^^^^^^ cannot move out of indexed content
| |
| hint: to prevent move, use `ref dir` or `ref mut dir`
,它編譯,但我不知道發生了什麼事。有人可以解釋「索引內容」的含義嗎?
如果我擁有數組,並且想要獲得數組中單個值的所有權(並且消耗arr的所有權AY)? – Thayne
如果它是'Vec',則可以使用'remove'方法,否則可以用一個虛擬值'mem :: replace'來替換值。 –