百科.dev
全部条目AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
S

slotmap

> 编程语言
开源

Rust 的 Slotmap 数据结构

1.3K stars0 点赞0 次浏览
访问官网GitHub

工具介绍

Rust 的 Slotmap 数据结构

slotmap 是一个 Rust 库,提供了三个容器,它们具有持久的唯一键来访问存储的值,分别是 SlotMap、HopSlotMap 和 DenseSlotMap。插入时会返回一个键,可用于以后访问或删除这些值。插入、删除和访问都需要 O(1) 的时间,开销很低。非常适合存储需要稳定、安全引用但没有明确所有权的对象集合,例如游戏实体或图形节点。还提供了两个辅助映射,SecondaryMap 和 SparseSecondaryMap,它们允许您将其他对象映射到其中一个 slotmap 所生成的键上。请参阅文档以获取更多信息。 slotmap 所需的最低稳定 Rust 版本为 1.58。要开始使用 slotmap,请在 Cargo.toml 中添加以下内容: toml [dependencies] slotmap = "1.0" 一个简单示例: Rust use slotmap::{SlotMap, SecondaryMap}; let mut sm = SlotMap::new(); let foo = sm.insert("foo"); // 在插入时生成的键 let bar = sm.insert("bar"); assert_eq!(sm[foo], "foo"); assert_eq!(sm[bar], "bar"); sm.remove(bar); let reuse = sm.insert("reuse"); // 从 bar 中重复使用空间 assert_eq!(sm.containskey(bar), false); // 删除后,键仍然无效 let mut sec = SecondaryMap::new(); sec.insert(foo, "noun"); // 为辅助映射提供键 sec.insert(reuse, "verb"); for (key, val) in sm { println!("{} is a {}", val, sec[key]); } 许可证 slotmap 遵循 Zlib 许可证,一种宽泛许可证。它获得了 OSI 和 FSF 认证,并与 GPL 兼容。

GitHub Issues· 0 开放

在 GitHub 查看全部

暂无开放 Issues,或尚未同步最近议题。

核心特点

  • •Rust

> 标签

Rust

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言