Passage d'une Structures en parametre - C++ - Programmation
Marsh Posté le 05-02-2006 à 19:38:37
on est pas en C, le 'struct' est de trop et Case est un type encapsulé dans Model, sont nom dans le context global est Model::Case
Code :
|
et utilises plutot des références
Marsh Posté le 05-02-2006 à 19:48:32
Ouhla, j'aurai jamais pensé à ca. Merci bien (une fois de plus)
Sinon, qu'entends tu par "utilises plutot des références" ?
Marsh Posté le 05-02-2006 à 19:56:47
ta methode 'drawCase' attend un argument de type pointeur sur 'Case' sans doute pour eviter la recopie d'un objet Case (dans ce cas passe un pointeur sur 'const Case' si tu ne modifie pas l'objet pointé dans la fonction) mais en C++ tu peux utiliser une reference, l'utilisation est transparente
Code :
|
Marsh Posté le 05-02-2006 à 19:26:05
Les structures me posent vraiment probleme
Voila, dans une classe Model, j'ai declaré une structure Case.
Dans une classe View, je souhaite pouvoir dessiner cette Case et j'ai donc une methode DrawCase qui doit avoir en parametre une Case.
Voici l'en tête Model :
l'en tete de View suivit de sa source
Cependant, ca ne marche pas et voici l'erreure de compilation
View.cpp:23: error: invalid use of undefined type `struct Case'
View.h:23: error: forward declaration of `struct Case
View.cpp:23 correspond a la ligne 2 de la source cpp
et View.h:23: à la ligne 12 de l'en tete view
J'ai l'impression que l'objet View ne connait tout simplement pas la structure Case alors que je fait bien un include de Model.
Je me demande donc s'il est vraiment possible pour View de voir la declaration de Case ds l'Objet Model ...