我有一个简单的浮点glib变量对象,我需要更新它的值,但似乎没有任何函数实际做到这一点。
唯一的方法似乎是创建一个新的变体对象并更新所有引用该对象的地方。问题是,实际上很难甚至不可能更新引用,而在已经存在的变体对象中设置值要容易得多。
这可能吗?
不,GVariant
是设计构造后不可变的。这使得跨多个线程使用它是安全的。
更新GVariant
值的唯一方法是用新值创建一个新的GVariant
。