Initialisation d'une liste de structure [Résolu]

Messages postés
36
Date d'inscription
mercredi 27 décembre 2006
Statut
Membre
Dernière intervention
25 novembre 2010
- - Dernière réponse : caiman125
Messages postés
36
Date d'inscription
mercredi 27 décembre 2006
Statut
Membre
Dernière intervention
25 novembre 2010
- 5 août 2007 à 02:11
SOS aide moi.
j'utilise comme IDE le wxdevc++ je veut initialise une liste contenant une structure en utilisant la bibliothèque list.h
voila mon code comme suit:
//class1.h
class class1
{
//autre fonction et attribut
struct rep
{
    int a;
    int b;
}
}

alors SVP dit moi comment declarer une liste dans le .h est comment l'utiliser pour l'ajout des element dans cette liste dans le .cpp
merci .
Afficher la suite 

7 réponses

Meilleure réponse
Messages postés
2023
Date d'inscription
mardi 24 septembre 2002
Statut
Membre
Dernière intervention
28 juillet 2008
4
3
Merci
Tu ne peux pas intialiser la structure. On peut pas initialiser un type. Il faut nécessairement une variable (de type "rep") (static ou pas) dans ta classe.

Si tu connais pas la notion de "constructeurs", un petit plongeon dans la doc te fera gagner du temps.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 199 internautes nous ont dit merci ce mois-ci

Commenter la réponse de luhtor
Messages postés
2023
Date d'inscription
mardi 24 septembre 2002
Statut
Membre
Dernière intervention
28 juillet 2008
4
0
Merci
Déclarer un object dans un .h me parait douteux, mais ca reste possible:

.h:

extern std::list<class1>  ma_liste;

dans ton .cpp:

std::list<class1>  ma_liste;

dans n'importe quelle fonction:
ma_liste.push_back(...);

Mais tu pourras pas utiliser ta classe, manque les constructeurs, l'opérateur d'affectation, etc ...
Commenter la réponse de luhtor
Messages postés
36
Date d'inscription
mercredi 27 décembre 2006
Statut
Membre
Dernière intervention
25 novembre 2010
0
Merci
svp l'initialisation de la liste pour la structure declarer dans la class n'est pas pour la classe
a quoi sa ressemble
Commenter la réponse de caiman125
Messages postés
2023
Date d'inscription
mardi 24 septembre 2002
Statut
Membre
Dernière intervention
28 juillet 2008
4
0
Merci
Je comprends rien.
Commenter la réponse de luhtor
Messages postés
36
Date d'inscription
mercredi 27 décembre 2006
Statut
Membre
Dernière intervention
25 novembre 2010
0
Merci
tu vois la structure rep existante dans la class1.
voila ma question
peut on l'initialiser dans le .cpp de la class1 comme une liste NULL ou vide pour qu'on peut ajouter des éléments au cours de la fonction main???
aide moi SVP n'hésite pas
Commenter la réponse de caiman125
Messages postés
36
Date d'inscription
mercredi 27 décembre 2006
Statut
Membre
Dernière intervention
25 novembre 2010
0
Merci
pour vous informer luhtor j'ai utiliser cette structure dans plusieur IDE comme le VC6 Code::block wxdevc++ est sa ne marche pas dit moi s'il y a une comfiguration a faire ou truc
Commenter la réponse de caiman125
Messages postés
36
Date d'inscription
mercredi 27 décembre 2006
Statut
Membre
Dernière intervention
25 novembre 2010
0
Merci
enfin voila la solution ,pour les autres membre qui sont debutant on programmation C
la déclaration d'une structure est en dehors de touts fonction ou classe

#include <list>

using namespace std;
struct structure
{
    membre1;
    membre2;
        :
        :
}
typedef list<structure> liste;

dans une fonction

void fonction ()
{
liste pliste;

pliste.push_back (element);  //pour l'ajout d'un element

//pour le parcours
for (liste::iterator courant=plist.begin(); courant!=plist.end() ; ++courant)
    {
        inst = *it;
        printf(" (%d,%d) ",inst.a,inst.b);
    }
}
 
et pour finir
MERCI infiniment pour CODE SOURCES 
Commenter la réponse de caiman125