Jak przekazać wskaźnik funkcji członka?
Próbuję przekazać funkcję członka w klasie do funkcji, która pobiera wskaźnik klasy funkcji członka. Problem, który mam, jest taki, że nie jestem pewien, jak poprawnie to zrobić w klasie za pomocą tego wskaźnika. Czy ktoś ma sugestie?
Oto kopia klasy, która przekazuje funkcję członka:
class testMenu : public MenuScreen{
public:
bool draw;
MenuButton<testMenu> x;
testMenu():MenuScreen("testMenu"){
x.SetButton(100,100,TEXT("buttonNormal.png"),TEXT("buttonHover.png"),TEXT("buttonPressed.png"),100,40,&this->test2);
draw = false;
}
void test2(){
draw = true;
}
};
Funkcja x.SetButton (...) jest zawarta w innej klasie, gdzie „obiekt” jest szablonem.
void SetButton(int xPos, int yPos, LPCWSTR normalFilePath, LPCWSTR hoverFilePath, LPCWSTR pressedFilePath, int Width, int Height, void (object::*ButtonFunc)()) {
BUTTON::SetButton(xPos, yPos, normalFilePath, hoverFilePath, pressedFilePath, Width, Height);
this->ButtonFunc = &ButtonFunc;
}
Jeśli ktoś ma jakąkolwiek radę, w jaki sposób mogę prawidłowo wysłać tę funkcję, aby móc z niej korzystać później.