[c++] Projet 2 cpp, héritage Observateur

Voir le sujet précédent Voir le sujet suivant Aller en bas

resolu [c++] Projet 2 cpp, héritage Observateur

Message  jabberwok le Dim 18 Mar 2012, 18:04

Bonjour/ Bonsoir,

J'ai créé une classe "ObservateurTexte", je l'ai fait héritée de QLabel et Observateur, j'ai implémenter les 2 méthodes abstraites :
Spoiler:
ObservateurTexte::~ObservateurTexte(){
g_othello->detacher(this);
}

void ObservateurTexte::rafraichir(const SujetDObservation * sdo){
this->setText(g_othello->getOthello()->toString().c_str());
}
J'ai ensuite fais un test dans la main :
Spoiler:
int main(int argc, char *argv[])
{
QApplication a(argc, argv); GererPartie * oth = new GererPartie();
ObservateurTexte * ot = new ObservateurTexte(oth);
ot->show();
return a.exec();
Ce qui provoque une erreur :
Code:
 cannot allocate an object of abstract type 'ObservateurTexte'
Quelqu'un aurait une idée d'où pourrait venir mon problème ?



Merci d'avance !


Dernière édition par jabberwok le Dim 18 Mar 2012, 20:21, édité 1 fois

jabberwok

Nombre de messages : 90
Prénom : ali
Statut : Gediplomeerd =)
Date d'inscription : 27/09/2010

Revenir en haut Aller en bas

resolu Re: [c++] Projet 2 cpp, héritage Observateur

Message  smb le Dim 18 Mar 2012, 18:55

Va revoir le prototype de la méthode rafraichir de Observateur !
Pour redéfinir dans une classe dérivée une méthode virtual de la classe mère, il faut une correspondance exacte !

smb

Nombre de messages : 1035
Age : 64
Prénom : Stéphan
Statut : Don de sang, don de vie!
Localisation : Spy
Date d'inscription : 23/01/2007

Revenir en haut Aller en bas

resolu Re: [c++] Projet 2 cpp, héritage Observateur

Message  jabberwok le Dim 18 Mar 2012, 19:00

ok je vais voir, merci

jabberwok

Nombre de messages : 90
Prénom : ali
Statut : Gediplomeerd =)
Date d'inscription : 27/09/2010

Revenir en haut Aller en bas

resolu Re: [c++] Projet 2 cpp, héritage Observateur

Message  jabberwok le Dim 18 Mar 2012, 20:13

Ok il y avait un "const" de trop ^^'
J'ai fait quelques modifs en plus, maintenant j'ai ce type d'erreurs :

Dans le fichier sujetDObservation.h
Description Resource Path Location Type
forward declaration of 'struct Observateur' sujetDObservation.h /OthelloGui/O_SDO line 6 C/C++ Problem
Pour :
Code:
 #ifndef __SUJETDOBSERVATION__H__
#define __SUJETDOBSERVATION__H__

#include <vector>

class Observateur;
 

Dans ma classe Jeu.h

Description Resource Path Location Type
invalid use of incomplete type 'struct Observateur' Jeu.cpp /OthelloGui/moteur line 285 C/C++ Problem

Pour :
Code:
 void Jeu::notifierChangement(){
   for(unsigned int i = 0; i < mesObservateurs.size(); i++){
      mesObservateurs.at(i)->rafraichir(this);
   }
}
(je précise que j'ai laissé la visibilité de la méthode notifierChangement à "protected")

Quelqu'un aurait une idée ?


edit : OK !
Problèmes résolus
Merci Monsieur =)
Pour le premier problème il suffisait d'inclure le fichier (ex : #include <votrechemin/Observateur.h>
Pour le second, il s'est résolus tout seul ^^', peut-être un caprice d'eclipse

Bonne soirée !

jabberwok

Nombre de messages : 90
Prénom : ali
Statut : Gediplomeerd =)
Date d'inscription : 27/09/2010

Revenir en haut Aller en bas

resolu Re: [c++] Projet 2 cpp, héritage Observateur

Message  smb le Dim 18 Mar 2012, 20:27

Tant mieux !
Maintenant, pourquoi redéfinir notifierChangement dans Jeu alors que le code de cette méthode existe déjà dans la classe SujetDObservation?

smb

Nombre de messages : 1035
Age : 64
Prénom : Stéphan
Statut : Don de sang, don de vie!
Localisation : Spy
Date d'inscription : 23/01/2007

Revenir en haut Aller en bas

resolu Re: [c++] Projet 2 cpp, héritage Observateur

Message  jabberwok le Dim 18 Mar 2012, 20:51

smb a écrit:Tant mieux !
Maintenant, pourquoi redéfinir notifierChangement dans Jeu alors que le code de cette méthode existe déjà dans la classe SujetDObservation?

En fait j'ai vu le virtual, je me suis dit que je devais la réécrire, mais vous avez raison, ça sert à rien ^^'
Merci !

jabberwok

Nombre de messages : 90
Prénom : ali
Statut : Gediplomeerd =)
Date d'inscription : 27/09/2010

Revenir en haut Aller en bas

resolu Re: [c++] Projet 2 cpp, héritage Observateur

Message  Contenu sponsorisé Aujourd'hui à 21:04


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum