Передавать в фунцию, скорее всего, нужно не только адрес функции-члена, но и адрес объекта, иначе внутри фунции, куда передаем указатель, нельзя будет этим указателем воспользоваться. Так что с передачей двух указателей - на объект и функцию-член, будет примерно так:
class A {
public:
int memFunc(char c) {
return c*5;
}
};
// задаем тип указателя на функцию член:
int (A::*MFunc)(char); // MFunc - тип указателя
void func(A *po, MFunc pf) {
int result = (po->*pf)(10); // вызов функции-члена через указатель на неё
}
int main (int argc, char** argv) {
A a;
MFunc pFunc = &A::memFunc; // получили адрес указателя
func(&a, pFunc); // передаем его в фунцию func
}