[−][src]Function tao_of_rust::ch03::type_size::reset
pub fn reset(arr: [u32; 5])
动态大小类型:[T]
探索数组
Error usage:
// Error: `[u32]` does not have a constant size known at compile-time fn reset(mut arr: [u32]) { arr[0] = 5; arr[1] = 4; arr[2] = 3; arr[3] = 2; arr[4] = 1; println!("reset arr {:?}", arr); } let arr: [u32] = [1, 2, 3, 4, 5]; reset(arr); println!("origin arr {:?}", arr);Run
Right usage 1: 指定固定长度
fn reset(mut arr: [u32; 5]) { arr[0] = 5; arr[1] = 4; arr[2] = 3; arr[3] = 2; arr[4] = 1; println!("reset arr {:?}", arr); } let arr: [u32; 5] = [1, 2, 3, 4, 5]; reset(arr); println!("origin arr {:?}", arr);Run
Right usage 2: 使用胖指针
fn reset(arr: &mut[u32]) { arr[0] = 5; arr[1] = 4; arr[2] = 3; arr[3] = 2; arr[4] = 1; println!("reset arr {:?}", arr); } let mut arr = [1, 2, 3, 4, 5]; println!("reset before : origin array {:?}", arr); { let mut_arr: &mut[u32] = &mut arr; reset(mut_arr); } println!("reset after : origin array {:?}", arr);Run