美文网首页
rust--array和slice的区别

rust--array和slice的区别

作者: 极光火狐狸 | 来源:发表于2018-09-14 17:58 被阅读24次
    // array和slice的区别
    
    // 首先array和slice的表现形式都是[], 但是它们却截然不同.
    // array 在rust中是固定大小的, 定义好了之后就不能新增或删除array中的元素.
    // 而slice是未知大小的, 因此一般情况下slice都必须要结合&来使用.
    
    // 表现形式:
    // array: [T; N]
    // slice: [T]
    
    // slice的几种表现形式:
    // &[T]:        'share slice', often just called 'slice'.
    // &mut [T]:    'mutable slice'
    // Box<[T]>:    'boxed slice'
    
    
    fn array_example() {
        let s: [i32; 4] = [1, 2, 3, 4];
        println!("{:?}", s);
    }
    
    
    fn slice_example() {
        let s: [i32; 4] = [1, 2, 3, 4];
        let y: &[i32] = &s[0..2];
        println!("{:?}", y);
    }
    
    
    fn main() {
        array_example();
        slice_example();
    }
    

    相关文章

      网友评论

          本文标题:rust--array和slice的区别

          本文链接:https://www.haomeiwen.com/subject/dcfagftx.html