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


Rust str.get_unchecked_mut用法及代碼示例


本文簡要介紹rust語言中 str.get_unchecked_mut 的用法。

用法

pub unsafe fn get_unchecked_mut<I>(    &mut self,     i: I) -> &mut <I as SliceIndex<str>>::Output where    I: SliceIndex<str>,

返回一個可變的、未經檢查的 str 子切片。

這是索引 str 的未經檢查的替代方法。

安全性

此函數的調用者負責滿足這些先決條件:

  • 起始索引不得超過結束索引;
  • 索引必須在原始切片的範圍內;
  • 索引必須位於 UTF-8 序列邊界上。

否則,返回的字符串切片可能會引用無效內存或違反 str 類型傳達的不變量。

例子

let mut v = String::from("🗻∈🌏");
unsafe {
    assert_eq!("🗻", v.get_unchecked_mut(0..4));
    assert_eq!("∈", v.get_unchecked_mut(4..7));
    assert_eq!("🌏", v.get_unchecked_mut(7..11));
}

相關用法


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