Quel est le raisonnement derrière les types à redéfinir dans GLib? Pourquoi convertissent-ils char
en gchar
, int
en gint
, etc.?Pourquoi GLib redéfinit-il les types?
10
A
Répondre
12
Consultez la documentation Basic Types dans la documentation GLib. Essentiellement, c'est pour garantir que certains types existeront avec certaines sémantiques, quel que soit le compilateur C ou la plate-forme que vous utilisez. Les types que C garantit de toute façon sont typedef
ed juste pour rendre tous les noms de types semblent uniformes.
Questions connexes
- 1. Les routines MD5 compatibles GLib?
- 2. Que doit être Glib :: init() pour utiliser Glib :: wrap?
- 3. Utiliser les expressions régulières avec Glib
- 4. glibc, glib et gnulib
- 5. GLib Hash Table - Pointer
- 6. GLib-GObject-CRITICAL warnings
- 7. C - Glib Portabilité GINT_TO_POINTER
- 8. Temporisations variables dans GLib
- 9. libérant Glib :: RefPtr
- 10. glib sur Symbian S60
- 11. Glib-Erreur MYSQL?
- 12. Valgrind signale une perte de mémoire lors de l'utilisation de types de données glib
- 13. Trier Hash Tables Glib - Qsort
- 14. Compiler Glib Code sur Ubuntu
- 15. Glib segfault g_free table de hachage
- 16. Pourquoi les types NULL se comportent-ils de cette façon?
- 17. Pourquoi C# interdit-il les types d'attributs génériques?
- 18. Pourquoi les types de valeurs sont stockés sur Stacks?
- 19. Pourquoi les enums sont-ils considérés comme des types composés?
- 20. Pourquoi les types sur System.Numerics sont-ils vides sur Reflector?
- 21. envoyer une hashtable glib avec MPI
- 22. Problème avec g_file_test dans glib
- 23. Manuel de glib et multithread
- 24. tkinter intégration avec glib mainloop
- 25. atomes GLib et des morceaux de mémoire
- 26. Besoin d'aide pour implémenter un serveur socket simple en utilisant GIOService (GLib, Glib-GIO)
- 27. Impossible de compiler le programme GLIB de base après GLIB installer
- 28. Comment convertir un entier en une chaîne dans GLib?
- 29. Problème de fuite de mémoire/GLib
- 30. Signal d'envoi DBus Glib - Aucun signal émis
Donc la raison de transformer char en gchar est de le rendre plus joli? – Lucas
D'une certaine manière, mais surtout parce que int peut ne pas être le même sur tous les systèmes, gint8 aura toujours 8 bits. – Dave
Je suppose. Certains des types gtypes (discutablement) donnent une sémantique supplémentaire sur un type simple, mais je pense que le reste est juste pour la cohérence et la portabilité. Souvenez-vous également que GLib date de 1999, et qu'il existait déjà un grand nombre de types comme «uint64_t». –