The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Каталог документации / Раздел "Программирование, языки" / Оглавление документа

Value arrays

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

typedef struct {
  guint   n_values;
  GValue *values;
} GValueArray;

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

guint  n_values; количество значений содержащихся в массиве
GValue  *values; массив значений

g_value_array_get_nth ()

GValue*             g_value_array_get_nth               (GValueArray *value_array,
                                                         guint index_);

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

value_array : GValueArray для получения значения
index_ : номер интересуемого значения
Возвращает : указатель значения index_ в value_array

g_value_array_new ()

GValueArray*        g_value_array_new                   (guint n_prealloced);

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

n_prealloced : количество элементов для предварительного распределения
Возвращает : вновь распределённая GValueArray с 0 значением

g_value_array_copy ()

GValueArray*        g_value_array_copy                  (const GValueArray *value_array);

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

value_array : GValueArray для копирования
Возвращает : Вновь распределённая копия GValueArray

g_value_array_free ()

void                g_value_array_free                  (GValueArray *value_array);

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

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

g_value_array_append ()

GValueArray*        g_value_array_append                (GValueArray *value_array,
                                                         const GValue *value);

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

value_array : GValueArray в которую добавляется элемент
value : GValue для копирования в GValueArray
Возвращает : GValueArray для размещённой value_array

g_value_array_prepend ()

GValueArray*        g_value_array_prepend               (GValueArray *value_array,
                                                         const GValue *value);

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

value_array : GValueArray в которую добавляется элемент
value : GValue для копирования в GValueArray
Возвращает : GValueArray для размещённой value_array

g_value_array_insert ()

GValueArray*        g_value_array_insert                (GValueArray *value_array,
                                                         guint index_,
                                                         const GValue *value);

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

value_array : GValueArray для добавления в неё элемента
index_ : позиция вставки, должна быть <= value_array->n_values
value : GValue для копирования в GValueArray
Возвращает : GValueArray для размещённой value_array

g_value_array_remove ()

GValueArray*        g_value_array_remove                (GValueArray *value_array,
                                                         guint index_);

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

value_array : GValueArray из которой удаляется элемент
index_ : позиция значения для удаления, должна быть < value_array->n_values
Возвращает : GValueArray для value_array

g_value_array_sort ()

GValueArray*        g_value_array_sort                  (GValueArray *value_array,
                                                         GCompareFunc compare_func);

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

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

value_array : GValueArray для сортировки
compare_func : функция для сравнения элементов
Возвращает : GValueArray для размещенной value_array

g_value_array_sort_with_data ()

GValueArray*        g_value_array_sort_with_data        (GValueArray *value_array,
                                                         GCompareDataFunc compare_func,
                                                         gpointer user_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()




Спонсоры:
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2021 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру