Почему оба примера &[u8]
и &[u8; 3]
ok в этом примере?
fn main() {
let x: &[u8] = &[1u8, 2, 3];
println!("{:?}", x);
let y: &[u8; 3] = &[1u8, 2, 3];
println!("{:?}", y);
}
ИЗМЕНИТЬ
Тот факт, что
&[T; n]
может принуждать к&[T]
, является аспектом, который делает их допустимыми. - Крис Морган
Почему &[T; n]
принуждает к &[T]
? В каких других условиях это принуждение происходит?