结构

GObjectTypeClass

描述 [源代码]

struct GTypeClass {
  /* No available fields */
}

用作所有类的基础的不透明结构。

函数

g_type_class_peek

此函数本质上与 g_type_class_ref() 相同,只是类的引用计数不会增加。因此,如果传入类型的类当前不存在(之前未引用过),此函数可能会返回 NULL

g_type_class_peek_static

g_type_class_peek() 的更有效率的版本,它只对静态类型有效。

自: 2.4

g_type_class_ref

增加属于 type 的类结构的引用计数。如果类不存在,此函数将强制创建该类。

实例方法

g_type_class_add_private

为可以实例化的类型注册私有结构。

已弃用: 2.58 自: 2.4

g_type_class_get_instance_private_offset

获取 g_class 的实例私有数据的偏移量。

自: 2.38

g_type_class_get_private
无可用描述。

g_type_class_peek_parent

这是一个类初始化程序中经常需要的便捷函数。返回传入类的直接父类型的类结构。由于派生类在其被实例化时会持有对它们父类的引用计数,因此返回的类将始终存在。

g_type_class_unref

减少正在传入的类结构的引用计数。一旦类结构的最后一个引用计数被释放,该类就有可能被类型系统终结,因此在 g_type_class_unref() 之后,进一步解除类指针的引用将无效。

g_type_class_unref_uncached

g_type_class_unref() 的一个变体,用于 GTypeClassCacheFunc 实现。它在不咨询 GTypeClassCacheFuncs 链的情况下解除对类的引用,从而避免了原本会发生的递归。