我已经尝试了多种方法,但这是一个猜测游戏
fn main() {
let _array: [&'static str; 4] = ["First", "Second", "Third", "Fourth"];
check_string(/*_array*/);
}
fn check_string(/*_input: ??? */) {
}
答案 0 :(得分:1)
检查rust中变量类型的一种好方法是这样做:
let val: () = /* your value */;
(Playground)
这会使您出错,说它期望使用()
而不是WhatEverYourTypeIs
在这种情况下,您将得到一个[&'static str; 4]
,就像您在代码中已经提到的那样;所以只需要在函数中输入
fn check_string(data: [&'static str; 4])
您还可以传递一个切片:
fn check_strings(data: &[&'static str])
玩一辈子:
fn check_strings<'a>(data: &'a[&'a str])
等
要调用它,可以通过:
check_string(_array);
如果使用大小合适的数组,或者
check_strings(&_array[..]);
如果要切片。