typed-arena 快速(但有限)分配区域,用于单一类型的值。 当竞技场本身被销毁时,分配的对象立即被销毁。 竞技场本身仍然存在时,没有单独分配对象。 缺点是分配很快:通常只是向量推送。 还有一种方法into_vec()可以在不再需要竞技场时恢复分配的对象的所有权,而不是破坏所有内容。 例子 use typed_arena :: Arena; struct Monster { level: u32 , } let monsters = Arena :: new (); let goku = monsters. alloc (Monster { level: 9001 });