方法

GLibSequencelookup

since: 2.28

声明 [src]

GSequenceIter*
g_sequence_lookup (
  GSequence* seq,
  gpointer data,
  GCompareDataFunc cmp_func,
  gpointer cmp_data
)

描述 [src]

返回一个迭代器,指向序列中第一个与给定数据data相等的位置,使用cmp_funccmp_data进行比较函数。如果有多个相等的元素,不能保证返回的是第一个。在这种情况下,可以使用g_sequence_iter_next()g_sequence_iter_prev()获取其他元素。

cmp_func使用序列中的两个项和cmp_data调用。如果项相等,它应返回0;如果第一个项在第二个项之前,它应返回负值;如果第二个项在第一个项之前,它应返回正值。

如果序列中的数据未排序,则此函数将失败。

Available since: 2.28

参数

data

类型:gpointer

要查找的数据。

此参数可以是NULL
数据由方法调用方拥有。
cmp_func

类型:GCompareDataFunc

用于比较序列中项的函数。

cmp_data

类型:gpointer

传递给cmp_func的用户数据。

此参数可以是NULL
数据由方法调用方拥有。

返回值

类型:GSequenceIter

一个指向第一个与给定数据data相等的项的位置的GSequenceIter,根据cmp_funccmp_data进行比较,或者如果不存在这样的项,则返回NULL

返回的数据由实例拥有。
返回值可以是NULL