是否可以在现有 GVariant 中存储、设置或更新值

Is it possible to store, set or update a value inside an existing GVariant

我有一个简单的浮点 glib 变体对象,我需要更新其值,但似乎没有任何函数可以实际执行此操作。

唯一的方法似乎是创建一个新的变体对象并更新所有引用该对象的地方。问题是更新引用几乎是不可能的,而且只在已经存在的变体对象中设置值会容易得多。

有可能吗?

否,GVariant is immutable在设计建造后。这使得它可以安全地跨多个线程使用。

更新 GVariant 值的唯一方法是用新值创建一个新的 GVariant