Rust中如何将切片元素复制到新数组?是否有语法糖实现?
有没有简洁的方式创建包含单个元素和另一切片元素的数组?
我想找一种简洁的方法,创建一个已包含某个元素的数组,同时把另一个切片的元素也复制进去。我原本想用类似解构的语法实现,代码如下:
fn main() { let cmd: u8 = 1; let config: &[u8; 2] = &[2, 3]; let bytes = &[cmd, ..config]; }
(注:这段代码无法运行,是我期望的写法)
本质上,我想知道有没有语法糖可以替代下面这两种实现方式:
方式一
fn main() { let cmd: u8 = 1; let config: &[u8; 2] = &[2, 3]; let mut bytes: [u8; 3] = [0; 3]; bytes[0] = cmd; bytes[1..].copy_from_slice(config); println!("{:?}", bytes); }
方式二
fn main() { let cmd: u8 = 1; let config: &[u8; 2] = &[2, 3]; let bytes = [cmd, config[0], config[1]]; println!("{:?}", bytes); }
内容的提问来源于stack exchange,提问作者Elias
相关产品推荐
相关产品推荐

