Bonjour à tous, une toute petite erreur que je comprend pas...![]()
Voici la définition de ma classe mère:
Les fonctions membres virtuelles non pures sont évidemment implémentées:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 class CFP { public: CFP(Choc & c, std::string nom_cfp); //Constructeur avec nom du composant CFP(Choc &c); virtual ~CFP(); // Méthodes virtuelles : implémentées dans les classes filles virtual void setImageReferenceIR(); virtual void setImageReferenceIR(int) = 0; virtual void setImageReferenceIR(float) = 0; virtual void setImageReferenceIR(cimg_library::CImg <unsigned short> ); };
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 void CFP::setImageReferenceIR() { image_IR_ref = camera.importImageIR(static_cast<int> (floor(camera.getNombreImages()*0.5)) ); }
Dans ma classe fille, j'ai:
et dans un bout de code de cfp.cpp, j'ai :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 class HR : public CFP { public: HR(Choc & c, std::string nom_cfp); virtual ~HR(); virtual void setImageReferenceIR(int); virtual void setImageReferenceIR(float); };
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 if (image_IR_ref.is_empty() ) { setImageReferenceIR(); }
Le compilo bloque sur la ligne en gras :
Pourtant, la fonction membre setImageReferenceIR() est définie dans la classe mère????HR.cpp(54) : error C2661: 'HR::setImageReferenceIR' : aucune fonction surchargée ne nécessite 0 arguments![]()
Merci de votre soutien !!
Partager