存储对象
Sui 使用自己的以对象为中心的全局存储来避免扩展问题。 Sui 的存储是基于对象的,而不是基于使用键值对等数据结构的账户。
对象使用唯一标识符并支持并行事务。标识符表示为地址,一个 32 字节的标识符。对象的地址包装在 id: UID
中。
key
能力表示对象结构体的第一个字段是 id: UID
,确保唯一地址。
要存储一个对象(的值),在 Sui 的 Move 中,使用 store
能力标记将存储在 Sui 链上存储中的对象。
public struct StoredObject has store {
v: u64,
}
以下是关于 store
能力的一些规则:
- 具有
store
能力的结构体,其所有嵌套结构体也需要具有store
能力。 - 具有
key
能力的结构体需要具有store
能力。