我有一个函数,希望将一个数组映射到另一个数组。
以下是一些显示问题的简化代码。(映射什么都不做;除了演示错误之外,这个函数毫无用处。)当我取消对赋值的注释时,它运行得很好。但是,当我尝试从函数外部传入数组时,它不会。
fn main(){
let args = ["a1", "b1"];
f( &args );
}
fn f ( args: &[&str] ) {
//let args = ["a2", "b2"];
println!("{args:?}");
let args = args.map(
|v| v
);
println!("{args:?}")
}
错误的原因可能是一个切片被传递。这是有道理的,因为我需要能够处理不同长度的数组。而且,slice似乎并没有映射函数。然而,我不知道如何修复它,也不知道我的评估是否正确。