Value arrays

Контейнерная структура для массива основных значений

Краткое описание


#include <glib-object.h>


                    GValueArray;
GValue*             g_value_array_get_nth               (GValueArray *value_array,
                                                         guint index_);
GValueArray*        g_value_array_new                   (guint n_prealloced);
GValueArray*        g_value_array_copy                  (const GValueArray *value_array);
void                g_value_array_free                  (GValueArray *value_array);
GValueArray*        g_value_array_append                (GValueArray *value_array,
                                                         const GValue *value);
GValueArray*        g_value_array_prepend               (GValueArray *value_array,
                                                         const GValue *value);
GValueArray*        g_value_array_insert                (GValueArray *value_array,
                                                         guint index_,
                                                         const GValue *value);
GValueArray*        g_value_array_remove                (GValueArray *value_array,
                                                         guint index_);
GValueArray*        g_value_array_sort                  (GValueArray *value_array,
                                                         GCompareFunc compare_func);
GValueArray*        g_value_array_sort_with_data        (GValueArray *value_array,
                                                         GCompareDataFunc compare_func,
                                                         gpointer user_data);

Описание

Главная цель GValueArray - использование в качестве свойства объекта которое содержит массив значений. GValueArray является оболочкой массива элементов GValue чтобы использовать как упаковочный тип через G_TYPE_VALUE_ARRAY.

Детали

GValueArray

GValueArray содержит массив элементов GValue.

guint n_values;

количество значений содержащихся в массиве

GValue *values;

массив значений

g_value_array_get_nth ()

Возвращает указатель на значение index_ содержащееся в value_array.

value_array :

GValueArray для получения значения

index_ :

номер интересуемого значения

Возвращает :

указатель значения index_ в value_array

g_value_array_new ()

Распределяет и инициализирует новую GValueArray, опционально резервирует пространство для n_prealloced элементов. Новый массив всегда содержит 0 элементов, независимо от значения n_prealloced.

n_prealloced :

количество элементов для предварительного распределения

Возвращает :

вновь распределённая GValueArray с 0 значением

g_value_array_copy ()

Конструирует существующую копию GValueArray дублируя всё её содержимое.

value_array :

GValueArray для копирования

Возвращает :

Вновь распределённая копия GValueArray

g_value_array_free ()

Освобождает GValueArray включая её содержимое.

value_array :

GValueArray для освобождения

g_value_array_append ()

Вставляет копию value как последний элемент value_array.

value_array :

GValueArray в которую добавляется элемент

value :

GValue для копирования в GValueArray

Возвращает :

GValueArray для размещённой value_array

g_value_array_prepend ()

Вставляет копию value как первый элемент value_array.

value_array :

GValueArray в которую добавляется элемент

value :

GValue для копирования в GValueArray

Возвращает :

GValueArray для размещённой value_array

g_value_array_insert ()

Вставляет копию value в определённую позицию value_array.

value_array :

GValueArray для добавления в неё элемента

index_ :

позиция вставки, должна быть <= value_array->n_values

value :

GValue для копирования в GValueArray

Возвращает :

GValueArray для размещённой value_array

g_value_array_remove ()

Удаляет значение в позиции index_ из value_array.

value_array :

GValueArray из которой удаляется элемент

index_ :

позиция значения для удаления, должна быть < value_array->n_values

Возвращает :

GValueArray для value_array

g_value_array_sort ()

Сортирует value_array используя compare_func для сравнения элементов согласно семантике GCompareFunc.

Текущая реализация использует Quick-Sort как алгоритм сортировки.

value_array :

GValueArray для сортировки

compare_func :

функция для сравнения элементов

Возвращает :

GValueArray для размещенной value_array

g_value_array_sort_with_data ()

Сортирует value_array используя compare_func для сравнения элементов согласно семантике GCompareDataFunc.

Текущая реализация использует Quick-Sort алгоритм сортировки.

value_array :

GValueArray для сортировки

compare_func :

функция для сравнения элементов

user_data :

дополнительные данные в качестве аргумента для compare_func

Возвращает :

GValueArray для размещенной value_array

Смотрите также

GValue, GParamSpecValueArray, g_param_spec_value_array()

Last updated

Was this helpful?