Pokazivač na član-funkciju može da se pozove samo sa
->* ili
.*, tako da, ako je
pf pokazivač na član-funkciju, onda poziv
a.pf() nije moguć. Ali, umesto toga može da se napravi omotač za pozivanje:
Code:
class test {
private:
void f () { cout << "Funkcija pozvana." << endl; } [blue]// član-funkcija[/blue]
void (test::*pf)(); [blue]// pokazivač na član-funkciju[/blue]
public:
test () : pf(&test::f) {}; [blue]// inicijalizacija pokazivača[/blue]
void pf_wrap () { (this->*pf)(); } [blue]// omotač za pozivanje[/blue]
};
int main () {
test a;
a.pf_wrap();
}