begin process at 2012 05 30 12:14:05
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Général

 > 

stuctures qui s'apellent mutuellement


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

stuctures qui s'apellent mutuellement

mercredi 29 décembre 2010 à 11:18:13 | stuctures qui s'apellent mutuellement

Daemonight


Bonjour à tous,

Ca fait un petit moment déjà que je me pose la question suivante : Comment faire pour que le code suivant fonctionne :
Code C/C++ :
struct A
{
    int toto;
    B *p_B;
};

struct B
{
    int tata;
    A *p_A;
};


A la compilation, évidemment, j'ai une erreur parce que le type B dans
Code C/C++ :
B *p_B;
n'est pas connu. Si j'inverse :

Code C/C++ :
struct B
{
    int tata;
    A *p_A;
};

struct A
{
    int toto;
    B *p_B;
};


evidemment cette fois ci c'est
Code C/C++ :
A *p_A;
qui génère une erreur car A n'est pas connu.

komenkonfé ? C'est possible au moins ?

Merci ! (et bonnes fêtes de fin d'années )

<----------------------------------------------->
On reconnait un bon developpeur au baobab qu'il a dans la main...
mercredi 29 décembre 2010 à 11:34:38 | Re : stuctures qui s'apellent mutuellement

buno

Administrateur CodeS-SourceS
Hello,
Généralement, ce genre de souci met l'accent sur un problème d'architecture.
As-tu vraiment besoin de ce pointage mutuel?

@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Rejoignez mon réseau professionnel sur Viadeo
mercredi 29 décembre 2010 à 11:51:32 | Re : stuctures qui s'apellent mutuellement

CptPingu

Administrateur CodeS-SourceS
Réponse acceptée !
@buno: Pas forcément, certains design pattern l'utilisent (visitor par exemple). Néanmoins, tu soulèves un point intéressant.

@Daemonight: Prédéclare ce qu'il faut:
Code C/C++ :
struct A; // Forward declaration
struct B
{
    int tata;
    A *p_A;
};

struct A
{
    int toto;
    B *p_B;
};


________________________________________________________________________
Historique de mes créations, et quelques articles:
http://0217021.free.fr/portfolio
Merci d'utiliser Réponse acceptée si un post répond à votre question
mercredi 29 décembre 2010 à 13:26:01 | Re : stuctures qui s'apellent mutuellement

Daemonight


Super merci ! J'aurai du penser à faire quelque chose dans ce goût là.

@Buno, en fait il s'agit à la base d'une structure qui possède, entre autre, un pointeur vers une liste chainée d'élément ... qui ont pour type cette même structure !

Code C/C++ :
struct chlist_element
{
  chlist_element *next;
  node *data;
};

struct node
{
  int x;
  int y;
  int value;
  chlist_element *head_row;
  chlist_element *head_col;
};


sachant que j'ai un tableau de X*Y node.

<----------------------------------------------->
On reconnait un bon developpeur au baobab qu'il a dans la main...
mercredi 29 décembre 2010 à 14:21:05 | Re : stuctures qui s'apellent mutuellement

buno

Administrateur CodeS-SourceS
Dans ce cas là, on utilise la même classe.
struct A
{
int toto;
A *p_A;
};

@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Rejoignez mon réseau professionnel sur Viadeo


Cette discussion est classée dans : code, int, cpp, struct, stuctures


Répondre à ce message

Sujets en rapport avec ce message

utilisation de atoi() [ par ims214 ] Bonjour, dans mon code j'ai déclaré: [code=cpp]WCHAR Xchar[10][/code] le programme rempli cette chaine à partir d'un index variable, par exemple: [co Déclarer explicitement une conversion de int => Enum [ par RV2931 ] Bonjour, J'ai pas mal d'énumération dans mon programme et j'ai souvent besoin de de prendre un simple int en entrée et de le convertir en l'Enumérati code source en C [ par lyna191 ] Bonsoir a tous , as que il y quelqu'un parmi vous qui peut m'explique ce code la (explication de la fonction Deplace) ? merci [code=cpp] int Deplac calculatrice matricielle avec boost::shared_array [ par mosaidrd ] le code ne genere aucune ereur mais il rencotre un problem d'assertion merci pour votre aide voici mon code : [code=cpp] //fichier Matrix.h #ifndef M Comparaison de structures [ par mal0506 ] Salut à tous! Je veux écrire une fonction post(t1,t2) de deux arguments de type struct temps testant si le temps t1 est postérieur au temps t2. Elle compiler c/c++ main en dll [ par bmoumen27 ] Comment compiler le code suivant en dll avec gcc [code=cpp]int main(int argc, char** argv){ //the main code here }[/code] Comment c/c++ appels .Ex IntToStr en C [ par RENTMEESTERS ] bonjour à tous, Je dois convertir un nombre entier INT en une chaîne de caractère qui devra être affichée sur un LCD (*char). J'utilise un 16F887 et erreur : Invalid struct or union type [ par Nico_35136 ] Bonjour, Voila , en ce moment je m'arrache les cheveux sur une allocation dynamique d'une structure en mémoire. Voici mes variable et structure que programme puissance suivant le protocole rpc [ par imoum ] j'ai une structure [code=cpp]param{int a; int b;}; [/code]et j'ai une fonction dans le programme serveur [code=cpp]pui_2_svc(param *argp, struct svc_ Qt::QGraphicsView [ par shorzy ] [b]Bonjour.[/b] je Voudrais Déplacer une QGraphicsView à la manière de: [code=cpp]setDragMode(QGraphicsView::ScrollHandDrag);[/code] Mais je voudrais


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,359 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales