函数

GLibErrordomain_register_static

自 2.68 起存在

声明 [src]

GQuark
g_error_domain_register_static (
  const char* error_type_name,
  gsize error_type_private_size,
  GErrorInitFunc error_type_init,
  GErrorCopyFunc error_type_copy,
  GErrorClearFunc error_type_clear
)

描述 [src]

此函数注册一个扩展的 GError 域。

error_type_name 不应释放。 error_type_private_size 必须大于 0。

error_type_init 接收初始化的 GError 并应初始化私有数据。

error_type_copy 是一个接收原始和拷贝 GError 的函数,应复制私有错误数据的字段。标准 GError 字段已经处理。

error_type_clear 接收错误指针,应释放私有错误数据的字段。但不应该释放这个结构本身。

通常,最好使用 G_DEFINE_EXTENDED_ERROR(),因为它已经处理了向此函数传递有效信息。

自 2.68 起可用

参数

error_type_name

类型: const char*

用于从 GQuark 创建静态字符串。

数据归函数的调用者所有。
值是一个以null结尾的UTF-8字符串。
error_type_private_size

类型: gsize

私有错误数据的字节大小。

error_type_init

类型: GErrorInitFunc

初始化私有错误数据字段的函数。

error_type_copy

类型: GErrorCopyFunc

复制私有错误数据字段的函数。

error_type_clear

类型: GErrorClearFunc

释放私有错误数据字段的函数。

返回值

类型: GQuark

GQuark 代表错误域。