di solito a un puntatore a funzione assegno una funzione (con stessi parametri i/o)
ora che usavo un puntatore a funzione membro non dovrei assegnargli una funzione membro? ho provato a fare questa cosa (come dice mondobimbi, la mia functionx è una funzione membro che accetta un int e non ritorna e l'ho definita nella classe SomeClass):
nel main:codice:class SomeClass { ... public: void functionx(int z) { }; ...
al che mi dice : "E2235 Member function must be called or its address taken"codice:typedef void (SomeClass::* PFM)(int); PFM ptrFuncMembro; SomeClass* ptrSomeClass = new SomeClass; ptrFuncMembro = ptrSomeClass->functionx;
Ho provato ad assegnargli invece che una funzione membro functionx, un puntatore di funzione membro definito nella classe SomeClass, quindi una cosa del tipo:
ma il mio intento era assegnare al puntatore di funzione membro creato nel main , la funzione membro della classe (SomeClass) , si può fare?codice:ptrFuncMembro = ptrSomeClass->PFMdefinitoInSomeClass;

Rispondi quotando