这两个示例之间的唯一区别是第一个示例在&
中有&[1, 2, 4]
。两个例子都有效。我试图找到这个原因的文档,但还没有找到任何文档。这是什么原因?将非常感谢文档链接。
示例1:
fn main() {
let x = &[1, 2, 4];
let mut iterator = x.iter();
assert_eq!(iterator.next(), Some(&1));
assert_eq!(iterator.next(), Some(&2));
assert_eq!(iterator.next(), Some(&4));
assert_eq!(iterator.next(), None);
println!("Ok.");
}
示例2:
fn main() {
let x = [1, 2, 4];
let mut iterator = x.iter();
assert_eq!(iterator.next(), Some(&1));
assert_eq!(iterator.next(), Some(&2));
assert_eq!(iterator.next(), Some(&4));
assert_eq!(iterator.next(), None);
println!("Ok.");
}