Slice types

语法
切片类型 :
   [ 类型 ]

切片是 动态大小类型 ,表示对类型为 T 的元素序列的 '视图' 。 切片类型书写为 [T]

切片类型通常通过指针类型来使用。例如:

  • &[T]:为 '共享切片' ,通常称 '切片' 。该类型不拥有它所指向的数据,是借用。
  • &mut [T]:为 '可变切片' 。该类型可变地借用它所指向的数据。
  • Box<[T]>:为 '装箱切片' 。

例如:

#![allow(unused)]
fn main() {
// 将一个堆分配的数组转换为切片
let boxed_array: Box<[i32]> = Box::new([1, 2, 3]);

// 从一个数组中创建共享切片
let slice: &[i32] = &boxed_array[..];
}

所有切片元素始终被初始化,访问切片时总是会进行边界检查,方法和操作是安全的。