函数
GLibPtrArraynew_null_terminated
since: 2.74
声明 [src]
GPtrArray*
g_ptr_array_new_null_terminated (
guint reserved_size,
GDestroyNotify element_free_func,
gboolean null_terminated
)
描述 [src]
类似于 g_ptr_array_new_full()
,但还可以将数组设置为以 NULL
结尾。以 NULL
结尾的指针数组在最后一个元素之后有一个额外的 NULL
指针,超出当前长度。
其他构造函数创建的 GPtrArray
不是自动以 NULL
结尾的。
注意,如果数组的长度为零且当前未分配数据数组,则 pdata
仍然为 NULL
。只有在实际分配了数组时,%GPtrArray 才会为 pdata
插入 NULL
结尾。它不能保证总是分配数组。换句话说,如果长度为零,则 pdata
可以指向一个长度为零的 NULL
结尾数组或为 NULL
。
Available since: 2.74
此功能不直接对语言绑定可用。
参数
reserved_size
-
类型:
guint
预分配指针的数量。如果
null_terminated
为TRUE
,则实际分配的缓冲区大小为reserved_size
加 1,除非reserved_size
为零,在这种情况下,则不会分配初始缓冲区。 element_free_func
-
类型:
GDestroyNotify
一个用于在销毁
array
或NULL
时释放元素的函数。 null_terminated
-
类型:
gboolean
是否使数组作为
NULL
结尾。