當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Rust slice.split_at_mut_unchecked用法及代碼示例


本文簡要介紹rust語言中 slice.split_at_mut_unchecked 的用法。

用法

pub unsafe fn split_at_mut_unchecked(    &mut self,     mid: usize) -> (&mut [T], &mut [T])

在索引處將一個可變切片分成兩部分,而不進行邊界檢查。

第一個將包含來自[0, mid) 的所有索引(不包括索引mid 本身),第二個將包含來自[mid, len) 的所有索引(不包括索引len 本身)。

有關安全的替代方案,請參閱 split_at_mut

安全性

使用越界索引調用此方法是未定義的行為即使不使用生成的參考。調用者必須確保0 <= mid <= self.len().

例子

#![feature(slice_split_at_unchecked)]

let mut v = [1, 0, 3, 0, 5, 6];
// scoped to restrict the lifetime of the borrows
unsafe {
    let (left, right) = v.split_at_mut_unchecked(2);
    assert_eq!(left, [1, 0]);
    assert_eq!(right, [3, 0, 5, 6]);
    left[1] = 2;
    right[1] = 4;
}
assert_eq!(v, [1, 2, 3, 4, 5, 6]);

相關用法


注:本文由純淨天空篩選整理自rust-lang.org大神的英文原創作品 slice.split_at_mut_unchecked。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。