Initialisation d'une liste de structure

Résolu
caiman125 Messages postés 36 Date d'inscription mercredi 27 décembre 2006 Statut Membre Dernière intervention 25 novembre 2010 - 1 août 2007 à 23:03
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 .

7 réponses

luhtor Messages postés 2023 Date d'inscription mardi 24 septembre 2002 Statut Membre Dernière intervention 28 juillet 2008 6
3 août 2007 à 16:25
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.
3
luhtor Messages postés 2023 Date d'inscription mardi 24 septembre 2002 Statut Membre Dernière intervention 28 juillet 2008 6
2 août 2007 à 11:44
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 ...
0
caiman125 Messages postés 36 Date d'inscription mercredi 27 décembre 2006 Statut Membre Dernière intervention 25 novembre 2010
2 août 2007 à 18:30
svp l'initialisation de la liste pour la structure declarer dans la class n'est pas pour la classe
a quoi sa ressemble
0
luhtor Messages postés 2023 Date d'inscription mardi 24 septembre 2002 Statut Membre Dernière intervention 28 juillet 2008 6
2 août 2007 à 18:48
Je comprends rien.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
caiman125 Messages postés 36 Date d'inscription mercredi 27 décembre 2006 Statut Membre Dernière intervention 25 novembre 2010
2 août 2007 à 23:24
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
0
caiman125 Messages postés 36 Date d'inscription mercredi 27 décembre 2006 Statut Membre Dernière intervention 25 novembre 2010
3 août 2007 à 15:38
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
0
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
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 
0
Rejoignez-nous