我使用 GSettings 来存储我的应用程序设置。这些格式是“a{q(bsyssbyqqqq)}”,所以它是字典。
有时我需要向该字典添加新记录。我可以从 GSettings 作为 GVariant 检索它。有没有办法只添加一条记录?
我创建了新的 GVariantBuilder 来创建该新条目,它工作正常,但其操作结果只是一条记录。要添加所有剩余的,我需要遍历所有现有的字典条目并将它们添加到构建器中。有没有更简单、更有效的方法来做到这一点?
可能为时已晚,但只是为了记录,glib 文档(http://developer.gnome.org/glib/2.32/glib-GVariant.html)说:
GVariant实例总是有一个类型和一个值(在构造时给出)。GVariant实例的类型和值永远不会改变,除非 GVariant本身被销毁。
因此,无法更改(向您的字典中添加一些记录)GVariant。做你想做的事情的唯一方法就是你现在正在做的事情。