2012-04-02 133 views
0

是否有可能讓對象的成員函數指針指向另一個對象的方法?如果是這樣,請舉個例子。成員函數指針指向另一個對象的方法

+0

我們可以有一些背景嗎?你爲什麼想要達到這個目標? – talnicolas 2012-04-02 16:25:37

+0

同一類型的另一個對象或不同類型的對象? – 2012-04-02 16:26:17

回答

2

是否有可能有一個對象的成員函數指針指向另一個對象的方法?

是的。

如果是這樣,請舉個例子。

我給你兩個。

struct A { 
void f() {} 
}; 
struct B { 
void (A::*p)(); 
}; 

int main() { 
A a; 
B b; 
b.p = &A::f; 
(a.*b.p)(); 

A* pA = &a; 
B* pB = &b; 
(pA->*pB->p)(); 
} 
相關問題