方法
GLibTreeinsert_node
自 2.68 版本以来
声明 [src]
GTreeNode*
g_tree_insert_node (
GTree* tree,
gpointer key,
gpointer value
)
描述 [src]
将键/值对插入到 GTree
中。
如果给定的键已在 GTree
中存在,则将其对应值设置为新值。如果创建 GTree
时提供了 value_destroy_func
,则使用该函数释放旧值。如果创建 GTree
时提供了 key_destroy_func
,则使用该函数释放传入的键。
随着新的键/值对的添加,树会自动‘平衡’,以便从根到每个叶子的距离尽可能小。维护平衡树的成本在插入新的键/值时导致 O(n log(n)) 操作,而大多数其他操作是 O(log(n))。
自 2.68 版本以来可用
参数
key
-
类型:
gpointer
要插入的键。
该参数可以是 NULL
。数据由方法调用者拥有。 value
-
类型:
gpointer
与键对应的值。
该参数可以是 NULL
。数据由方法调用者拥有。
返回值
类型: GTreeNode
已插入(或设置)的节点或 NULL
(如果插入会超出树节点计数器)。
返回的数据由实例拥有。 |
返回值可以是 NULL 。 |