Probleme de connect - C++ - Programmation
Marsh Posté le 19-02-2010 à 13:14:24
Fais voir le .h de curv et Population.
(note : le QObject:: devant le connect ne sert à rien, tu peux le virer)
Marsh Posté le 19-02-2010 à 13:30:16
curv.h:
Code :
|
Population.h :
Code :
|
Marsh Posté le 19-02-2010 à 13:41:28
Tes constructeurs sont pas top. Tu devrais faire un truc comme ça :
curv::curv( QWidget* parent, int size, int xmin, int xmax, int ymin, int ymax, double *xval, double *yval,int ms, Population &pop) : QWidget( parent ),...
Population::Population( QObject* parent ) : QObject( parent )...
Marsh Posté le 19-02-2010 à 13:44:03
Pourquoi ajouter un widget parent à curv ?
j'ai modifié mon constructeur de Population en ça :
Population::Population(..., QObject *parent): QObject(parent){...}
mais comme avant il me sort :
Citation : error: ‘QObject::QObject(const QObject& )’ is private |
A l'entrée de ma classe Population.
Marsh Posté le 19-02-2010 à 13:58:58
Essaie un
connect( &pop, SIGNAL( mort() ), this, SLOT( repain() ) );
eu lieu de
connect( pop, SIGNAL( mort() ), this, SLOT( repain() ) );
Marsh Posté le 19-02-2010 à 14:06:03
J'ai déjà essayé :
QObject::connect(pop, SIGNAL(mort()),this, SLOT(repain()));
QObject::connect(&pop, SIGNAL(mort()),this, SLOT(repain()));
en ayant pop déclaré pop comme suit : Population &pop dans le header
puis comme ça
QObject::connect(pop, SIGNAL(mort()),this, SLOT(repain()));
en ayant déclaré pop comme suit : Population *pop dans le header
Et à chaque fois il me dit des mots doux du style de l'erreur d'en haut.
Marsh Posté le 19-02-2010 à 14:14:18
Pourquoi
# class Population : protected QObject
# {
Et pas
# class Population : public QObject
# {
?
Marsh Posté le 19-02-2010 à 14:27:18
Reply
Marsh Posté le 19-02-2010 à 12:19:52
Bonjour, nouveau jour nouveau problème
Aujourd'hui donc mon problème est lié à cette erreur :
error: no matching function for call to ‘curv::connect(Population&, const char*, curv* const, const char*)’
Elle m'apparait deux fois.
La première fais référence à cette ligne de code :
et la seconde à celle ci :
le code de la méthode où se trouve ces deux connect est le constructeur d'une QFrame contenant un QwtPlotCurve, en voici le code, avec les include :
Pour info, pop est une références. J'ai testé en passant pop comme pointeur mais ça ne change rien. J'ai fais Qmake à chaque test que j'ai fais.
Mercis pour tout info m'aidant à résoudre et comprendre le problème.
Message édité par ailonn le 19-02-2010 à 13:30:40