2010-03-27 3 views
1

j'ai déclaré une classe commeproblèmes avec les membres de la fonction surchargée C++

class DCFrameListener : public FrameListener, public OIS::MouseListener, public OIS::KeyListener 
{ 
    bool keyPressed(const OIS::KeyEvent & kEvt); 
    bool keyReleased(const OIS::KeyEvent &kEvt); 

//*******some code missing************************ 
}; 

Mais si j'essaie de définir les membres comme celui-ci

bool DCFrameListener::keyPressed(const OIS::KeyEvent kEvt) 
{ 
    return true; 
} 

Le compilateur refuse cette erreur

error C2511: 'bool DCFrameListener::keyPressed(const OIS::KeyEvent)' : overloaded member function not found in 'DCFrameListener' 
see declaration of 'DCFrameListener' 

Pourquoi est-ce que cela se produit, mais j'ai déclaré le membre keyPressed (const OIS :: KeyEvent) dans ma déclaration de fonction.

toute aide sera appréciée. Merci

+0

ok, erreur stupide. Je ne l'ai pas vu venir :) –

+0

Les erreurs stupides sont OK, tant qu'elles sont temporaires. –

Répondre

12

L'une dans la déclaration a une référence:

bool keyPressed(const OIS::KeyEvent & kEvt); 
            ^! 
bool DCFrameListener::keyPressed(const OIS::KeyEvent kEvt) 
                ^? 
+4

Drôle comment l'œil peut briller sur une telle chose. –

Questions connexes