Bonjour à tous.
Je code en ce moment une "bibliothèque" et j'aimerais connaître votre avis sur deux points.
Cette bibliothèque possède un module contenant plusieurs fonctions facilitant la gestion de la mémoire.
En faite, tout simplement un appel à *alloc avec vérification du retour. Si l'allocation a échoué, elle écrit un message d'erreur puis ferme le programme.
1ère question :
Si l'allocation échoue, est-il absolument nécessaire de faire un exit(1) sans autre forme de procès ou existe t'il un moyen plus propre de gérer ça ?
2eme question :
J'envisage de créer une fonction tenant à jour une liste des ressources allouées (grâce à un tableau de void*), afin de pouvoir tout libérer en quittant le programme.
Bien entendu elle n'a pas pour but d'attendre le dernier moment pour libérer la mémoire, mais plutôt de simplifier le cas ou l'application devrait se terminer en cours
d'exécution.
Cette fonction présente t elle un réel interêt ? Quelle est la "bonne méthode" ?
Merci.
Partager