我在Rust Rust中有一個固定大小的數組,我想將它變成(String, String)
。我可以在不復制值的情況下執行此操作嗎將數組移動到元組
的一塊,我在特別工作代碼如下:
let (basis, names_0, names_1) = if let Some(names) = self.arg_name {
(ComparisonBasis::Name, names[0], names[1])
} else {
(ComparisonBasis::File, self.arg_file[0], self.arg_file[1])
};
類型:
self.arg_name: Option<[String; 2]>
self.arg_file: Vec<String>
現在,我得到錯誤
cannot move out of type `[std::string::String; 2]`, a non-copy fixed-size array [E0508]
和
cannot move out of indexed content [E0507]
if
最後,我想我有點過分熱衷於嘗試優化克隆的調用。這個問題中的一段代碼每次程序運行只調用一次,它只有兩個(可能很小)的字符串。 – Apanatshka