читаю статью:
https://www.ibm.com/developerworks/linux/tutorials/l-glib/index.html
И мне непонятно, как программист должен поступать с объектами, помещаемыми в массив GArray.
Должен ли программист увеличивать объектам счётчик ссылок перед помещением в массив? Кто будет счётчик ссылок объектов уменьшать, если сам массив при своём уничтожении этого не делает?
тут:
https://developer.gnome.org/glib/stable/glib-Arrays.html#g-array-free
написано, что может существовать функция element_free_func
У меня по задумке каждая рама должна хранить список мам, находящихся поблизости.
В общем, где примеры использования Array с наследниками GObject?
У меня есть подозрение, что на самом деле нужно использовать GPtrArray и именно у него есть та функция удаления элементов. А то, что про функцию упоминается в простом GArray - это бага в документации.
UPD: не бага, там есть функция g_array_set_clear_func
https://developer.gnome.org/glib/stable/glib-Arrays.html#g-array-set-clear-func
Теперь я не знаю, что мне выбрать - GArray или GPtrArray
советуют брать второе:
https://stackoverflow.com/questions/14684739/free-memory-for-elements-of-garray