[comme je sais qu'il y a des bases en C++ dans cette lidie ...]
Bonjour,
Je refais du C++ après un petit temps et je tombe sur un os.
J'aimerais créer une classe dont le constructeur initialise une variable avec l'appel d'une fonction.
Mais voilà, je peux tester le retour de cette fonction, et je ne sais pas comment je doit réagir si cette fonction retourne une erreur et donc que la variable n'est pas initialisée. La variable n'étant pas initialisée, l'objet (classe) n'a plus de raison d'être.
ex:
class philo {
philo();
~philo();
TYPE_MACHIN *variable;
}
philo::philo(){
variable=fonction_qui_est_dans_une_librairie_pas_a_moi_qui_initialise_des_trucs();
if (variable==NULL) {
// pas bonne initialisation
// qu'est-ce que je fais
}
}
philo::~philo(){
// je devrais tester ici si variable est != NULL
destructeur_des_machins(variable);
}
Maintenant je cherche un truc qui permet à la (aux) fonction(s) qui crée(nt) un object de type philo que ca c'est mal passé du coté constructeur.
du genre
philo *my_philo_variable;
if ((my_philo_variable=new philo)== NULL) {
// ok c'est ko
}
Si quelqu'un à quelques idées sur cette question philosophique.
Merci.