Récupérer une structure depuis une liste
Bonjour,
Je cherche un moyen pour récupérer une donnée d'un GList. La donnée en question est une structure, ce qui ne devrait dont pas différer de tout autre type de données.
Pourtant j'ai essayé plusieurs choses sans succès. Pouvez-vous me dire si la manipulation du gpointer récupéré est bonne ?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
GList *ma_liste;
//initialisation
ma_liste = NULL;
//ajout d'éléments de cette façon
GList *tmp;
mon_type *ma_struct;
tmp = g_list_append(ma_liste, (mon_type *) ma_struct);
if(tmp != NULL)
ma_liste = tmp;
//récupération d'une structure
gpointer tmp;
mon_type *struct_recuperee;
//récupération du 2eme élément de la liste
tmp = g_list_nth_data(ma_liste, 1);
struct_recuperee = (mon_type *) tmp;
// ... travail sur la structure |
Voila voila, merci de vos réponses :)