结构
GLibStringChunk
说明 [src]
struct GStringChunk {
/* No available fields */
}
GStringChunk
提供了高效的字符串组存储方式
字符串块用于存储字符串组。内存以区块分配,将字符串添加到 GStringChunk
时,它们会被复制到区块中下一个空位置。当一个区块已满,将分配一个新区块。
在存储大量字符串时,字符串块比使用 g_strdup()
更高效,原因在于对 malloc()
的调用次数更少,内存分配开销节省的内存也更多。
通过使用 g_string_chunk_insert_const()
添加字符串,也可以删除重复项。
要创建一个新的 GStringChunk
,请使用 g_string_chunk_new()
。
要向 GStringChunk
中添加字符串,请使用 g_string_chunk_insert()
。
要向 GStringChunk
中添加字符串,但不重复已包含在 GStringChunk
中的字符串,请使用 g_string_chunk_insert_const()
。
要释放完整的 GStringChunk
,请使用 g_string_chunk_free()
。无法释放单个字符串。
实例方法
g_string_chunk_clear
释放 GStringChunk
中包含的所有字符串。调用 g_string_chunk_clear()
之后,不能再访问包含其中的任何字符串。
自:2.14 版
g_string_chunk_insert
将 string
的副本添加到 GStringChunk
中。它返回 GStringChunk
中字符串的新副本的指针。必要时,可以更改字符串中的字符,但不要在字符串结尾后进行任何更改。
g_string_chunk_insert_const
将 string
的副本添加到 GStringChunk
中,除非已使用 g_string_chunk_insert_const() 将相同的字符串添加到 GStringChunk
中。