Problem en c++

Résolu
samiramaster Messages postés 2 Date d'inscription vendredi 26 mars 2010 Statut Membre Dernière intervention 1 avril 2010 - 1 avril 2010 à 15:08
samiramaster Messages postés 2 Date d'inscription vendredi 26 mars 2010 Statut Membre Dernière intervention 1 avril 2010 - 1 avril 2010 à 15:52
salut s.v.p
plz aidez moi je suis débutante en c++
j'ai pas compris cette instruction Eleve* Classe = (Eleve*) malloc (sizeof (Eleve));
Classe->Suivant = Classe;
elle fait quoi c urgent
merci d'avance .

2 réponses

cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
1 avril 2010 à 15:34
C'est un code *dégueulasse* qui mélange C et C++.
Ça consiste à réserver de la place en mémoire pour une classe.
Apparemment c'est une liste chainée.

En C++ correcte, on écrirais plutôt:
Eleve* classe = new Eleve;
classe->suivant = classe;
// on pensera aussi au delete classe;

ou encore:
Eleve classe;
classe.suivant = &classe;


En revanche j'ai du mal à comprendre l'utilité de déclarer l'objet lui même comme étant son suivant. Ça fait une liste chainée d'un seul élément qui "tourne en rond".

Une petite remarque: Ne dit jamais qu'un problème est urgent, tu n'auras pas une réponse plus vite, et c'est énervant.
Voir: http://www.gnurou.org/writing/smartquestionsfr

_____________________________________________
Historique de mes créations, et quelques articles:[ http://0217021.free.fr/portfolio
http://0217021.free.fr/portfolio]
3
samiramaster Messages postés 2 Date d'inscription vendredi 26 mars 2010 Statut Membre Dernière intervention 1 avril 2010
1 avril 2010 à 15:52
merci vraiment c urgent
0
Rejoignez-nous