IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
logo

FAQ GTK+Consultez toutes les FAQ

Nombre d'auteurs : 10, nombre de questions : 101, dernière mise à jour : 22 février 2018  Ajouter une question

 

Cette faq a été réalisée à partir des questions fréquemment posées sur les forums de www.developpez.com et de l'expérience personnelle des auteurs.
Je tiens à souligner que cette faq ne garantit en aucun cas que les informations qu'elle propose sont correctes ; les auteurs font le maximum, mais l'erreur est humaine. Cette faq ne prétend pas non plus être complète. Si vous trouvez une erreur, ou que vous souhaitez devenir rédacteur, lisez ceci.
Sur ce, nous vous souhaitons une bonne lecture, L'équipe GTK+.

SommaireGlibLa gestion des erreurs (4)
précédent sommaire suivant
 

Pour informer l'utilisateur du bon ou du mauvais déroulement de votre programme, la glib propose trois fonctions selon le type d'information à afficher :

  • g_message : pour les messages normaux ;
  • g_warning : pour les messages d'avertissement ;
  • g_critical : pour les erreurs critiques ;
  • g_error : à utiliser en cas de détection d'un bug dans votre programme, cette fonction met fin au programme et génère un core dump ;
  • g_debug : pour afficher des informations de débogage.

Mis à jour le 16 novembre 2006 sub_khaine

Par défaut les fonctions d'affichage des messages d'erreur (g_message, g_warning, ...) affichent un message sur la sortie standard adéquate (stdout ou stderr), mais il est possible de lui demander d'utiliser nos propres fonctions (pour afficher une boîte de dialogue, par exemple) grâce à la fonction :

Code C : Sélectionner tout
1
2
3
4
guint g_log_set_handler (const gchar *log_domain, 
                         GLogLevelFlags log_levels, 
                         GLogFunc log_func, 
                         gpointer user_data);

Mis à jour le 16 novembre 2006 sub_khaine

Vous souhaitez vérifier la validité des paramètres passés à une fonction, plutôt que d'utiliser une suite de if imbriqués, vous pouvez utiliser la macro :

Code C : Sélectionner tout
#define g_return_if_fail(expr)
Cette macro quitte la fonction actuelle si son paramètre expr vaut faux et affiche un message critique. Si votre fonction doit retourner une valeur vous devez utiliser la macro :

Code C : Sélectionner tout
#define g_return_val_if_fail(expr,val)
Qui, en plus, fera retourner la valeur val à la fonction.

Mis à jour le 16 novembre 2006 sub_khaine

Les fonctions, surtout celles de GLIB, prennent souvent en paramètre un pointeur de pointeur sur un objet de type GError. Il faut donc déclarer un pointeur sur un objet de ce type ce qui permettra d'en passer l'adresse aux fonctions (d'où l'utilité d'un pointeur de pointeur et non un simple pointeur) :

Code C : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
GError * p_err = NULL; 
GIOChannel * p_file = NULL; 
  
p_file =  g_io_channel_new_file ("fichier.txt", "r", & p_err); 
  
if (p_file == NULL) 
{ 
   /* Affichage du message d'erreur standard : */ 
   g_printf ("%s\n", p_err->message); 
   g_error_free (p_err); 
}

Mis à jour le 14 mai 2007 P'tit Pack

Proposer une nouvelle réponse sur la FAQ

Ce n'est pas l'endroit pour poser des questions, allez plutôt sur le forum de la rubrique pour ça


Réponse à la question

Liens sous la question
précédent sommaire suivant
 

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2024 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.