Sto usando C++ (non C++ 11). Devo fare un puntatore a una funzione all'interno di una classe. Cerco di fare seguente:Il riferimento alla funzione membro non statico deve essere chiamato
void MyClass::buttonClickedEvent(int buttonId) {
// I need to have an access to all members of MyClass's class
}
void MyClass::setEvent() {
void (*func) (int);
func = buttonClickedEvent; // <-- Reference to non static member function must be called
}
setEvent();
Ma c'è un errore: "Il riferimento a funzione di membro non statico deve essere chiamato". Cosa devo fare per creare un puntatore a un membro di MyClass?
Non è possibile assegnare un puntatore a funzione a una funzione membro. È necessario utilizzare un puntatore al membro o una funzione gratuita. – imreal
Cosa intendi per "puntatore a un membro"? Per "funzione libera" intendevi una funzione al di fuori di una classe? Sì, so che funzionerà se rimuoverò la parte "MyClass ::" dalla definizione "void MyClass :: buttonClickedEvent ..." ma ho bisogno di avere accesso ai membri di MyClass all'interno della funzione "buttonClickedEvent" .. – JavaRunner