值集合
值集合
GLib 为像 g_object_new()
或 g_object_set()
这样的可变参数戈 organisms 函数提供了一组宏来支持 varargs 分析。
它们目前支持整数类型、浮点类型和指针的集合。
宏
G_VALUE_COLLECT_INIT(value, _value_type, var_args, flags, __error)
-
从
va_list
收集可变参数值。我们必须将 varargs 收集实现为宏,因为在某些系统中,无法通过引用传递
va_list
变量。自:2.24
G_VALUE_COLLECT_INIT2(value, g_vci_vtab, _value_type, var_args, flags, __error)
-
是
G_VALUE_COLLECT_INIT
的一个变体,它提供了GTypeValueTable
给调用者。自:2.74
G_VALUE_COLLECT(value, var_args, flags, __error)
-
从
va_list
收集可变参数值。我们必须将 varargs 收集实现为宏,因为在某些系统中,无法通过引用传递
va_list
变量。注意:如果您在调用此宏之前刚刚创建
value
参数,请使用G_VALUE_COLLECT_INIT
变体并传递未初始化的GValue
。这个变体比G_VALUE_COLLECT
快速。 G_VALUE_COLLECT_SKIP(_value_type, var_args)
-
跳过
var_args
中的_value_type
类型的参数。 G_VALUE_LCOPY(value, var_args, flags, __error)
-
将值的价值存储在
va_list
中的一个或多个参数位置。这是
G_VALUE_COLLECT()
的逆操作。 G_VALUE.COLLECT_FORMAT_MAX_LENGTH
-
可以收集单个
GValue
的GTypeCValue
的最大数量。