函数
GLibArraynew_take_zero_terminated
自:2.76
声明 [src]
GArray*
g_array_new_take_zero_terminated (
gpointer data,
gboolean clear,
gsize element_size
)
描述 [src]
创建一个新的GArray
,将其data
作为数组数据,计算其长度并设置引用计数为1。
这避免了需要手动复制数据,在这种情况下,可以继承它。在这个调用之后,data
属于GArray
,可能不再由调用者修改。data
的内存必须动态分配,最终将使用g_free()来释放。
长度通过迭代data
,直到找到第一个NULL
元素来计算。
如果需要在数组合并释放时清除元素,请使用g_array_set_clear_func()
来设置一个GDestroyNotify
函数来执行此任务。
如果data
的长度或element_size
大于G_MAXUINT
,则不要使用它。GArray
将其数据的长度存储在高位guint
中,可能比#gsize短。
自:2.76
此函数对语言绑定不可直接使用。