tinyvec

有時候,您會希望有項目可以像 Vec 一樣調整大小,但沒有堆積分配量。tinyvec 提供這項機制:這個向量由陣列或切片支援,能以靜態方式分配或置於堆疊,進而追蹤元素用量,以及因您嘗試使用的量超出分配量所導致的恐慌。

use tinyvec::{array_vec, ArrayVec};

fn main() {
    let mut numbers: ArrayVec<[u32; 5]> = array_vec!(42, 66);
    println!("{numbers:?}");
    numbers.push(7);
    println!("{numbers:?}");
    numbers.remove(1);
    println!("{numbers:?}");
}
  • 為初始化,tinyvec 規定元素型別須實作 Default
  • Rust Playground 包含 tinyvec,因此這個範例可在行內執行。