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


Rust String.reserve用法及代碼示例


本文簡要介紹rust語言中 std::string::String.reserve 的用法。

用法

pub fn reserve(&mut self, additional: usize)

確保此 String 的容量至少比其長度大 additional 字節。

如果選擇,容量可能會增加超過additional 個字節,以防止頻繁的重新分配。

如果您不希望出現這種 “at least” 行為,請參閱 reserve_exact 方法。

Panics

如果新容量溢出 usize 會出現Panics。

例子

基本用法:

let mut s = String::new();

s.reserve(10);

assert!(s.capacity() >= 10);

這實際上可能不會增加容量:

let mut s = String::with_capacity(10);
s.push('a');
s.push('b');

// s now has a length of 2 and a capacity of 10
assert_eq!(2, s.len());
assert_eq!(10, s.capacity());

// Since we already have an extra 8 capacity, calling this...
s.reserve(8);

// ... doesn't actually increase.
assert_eq!(10, s.capacity());

相關用法


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