Association de classes en C++
chmanu
Messages postés
166
Date d'inscription
Statut
Membre
Dernière intervention
-
chmanu -
chmanu -
Salut tous,
J ai un programme issu d'un shéma UML, et j ai deux classe par exemple Propriete et Joueur et je voudrais associer ces deux classes :
un Joueur possede des proprietes et une Propriete appartient à un joueur.
j ai donc lier les deux class par des pointeurs.
Seulement, mon compilateur ne veut pas car ds joueur.h j ai fais un #include "propriete.h" et ds propriete.h j ai fait #include "joueur.h". J etais pourtant sur que ca pouvait marcher qd meme!
Est ce de la faute du compilateur?
comment faire pour garder deux fichier separés?
J ai un programme issu d'un shéma UML, et j ai deux classe par exemple Propriete et Joueur et je voudrais associer ces deux classes :
un Joueur possede des proprietes et une Propriete appartient à un joueur.
j ai donc lier les deux class par des pointeurs.
Seulement, mon compilateur ne veut pas car ds joueur.h j ai fais un #include "propriete.h" et ds propriete.h j ai fait #include "joueur.h". J etais pourtant sur que ca pouvait marcher qd meme!
Est ce de la faute du compilateur?
comment faire pour garder deux fichier separés?
A voir également:
- Association de classes en C++
- Association avec le server freebox en cours freeplug vert - Forum Freebox
- Association avec le serveur freebox en cours - Forum Freebox
- Telecharger logiciel de gestion d'association gratuit - Télécharger - Gestion de projets
- Mysql error in file: /engine/classes/mysql.php at line 53 ✓ - Forum Réseaux sociaux
- Dcb association 6868 - Forum Téléphones & tablettes Android
1 réponse
Bien je pense que je pourrai m'en tirai avec ca :
http://groups.google.com/groups?q=multiple+%23include&hl=fr&selm=1989Nov6.172747.9547%40paris.ics.uci.edu&rnum=2
c'est tres bien expliquer bien que ce soit en anglais.
(j aime bien mettre les solutions de mes pb car si jamais qq un (ou moi) en a besoin un jour, il a ka rech ds le forum.
Tiens j en profite pour demander au webmaster si ce serait pas possible d avoir une recherche avec plusieurs mots clés?
chmanu
http://groups.google.com/groups?q=multiple+%23include&hl=fr&selm=1989Nov6.172747.9547%40paris.ics.uci.edu&rnum=2
c'est tres bien expliquer bien que ce soit en anglais.
(j aime bien mettre les solutions de mes pb car si jamais qq un (ou moi) en a besoin un jour, il a ka rech ds le forum.
Tiens j en profite pour demander au webmaster si ce serait pas possible d avoir une recherche avec plusieurs mots clés?
chmanu
mais en indiquant au compilateur l'existence de cette classe, en utilisant la syntaxe:
class NomDeTaClasse
Attention cela ne marche que pour des références (pointeurs),pour les aggrégatoins utliser la méthode #define...
Exemple:
class CJoueur
class propriete
{
CJoueur *joueur;
......
}
et dans propriete.cpp -> #include "propriete.h"
mais j ai qd meme une (meme deux) questions :
est ce preferable de definir une classe joueur (typedef class Joueur Joueur;)
ou de lui indiquer qu elle est definie ailleur (extern class Joueur Joueur;)
je pencherait pour la deuxieme solution, mais le compilateur ne fait aucune difference.
et sinon, comment je cree le Makefile?
comme ca :
main: main.o joueur.o propriete.o
gcc -o main.o joueur.o propriete.o
main.o: main.cpp joueur.h propriete.h
...
joueur.o: joueur.cpp joueur.h propriete.h
gcc -c joueur.cpp joueur.h propriete.h
propriete.o: propriete.cpp propriete.h joueur.h
gcc -c propriete.cpp propriete.h joueur.h
Y aura pas conflit?
j ai pas essaye, en fait j ai une dizaine de classes et j ai fait comme ca avec la dizaine et ca marche pas alors je voulais savoir si c le principe ou si c a l interieur de mes fichiers qu il y a un pb.
Merci encore