C++ では、ポインターを使用して、クラス B からクラス A のメソッド メンバーを呼び出すにはどうすればよいですか? ちなみにクラスAとBはタイプが違います。
ポインターがメンバー関数を指している場合、クラス内のメンバー関数のみを指すことができると読みました。しかし、どうすればクラス外のメンバー関数を指すことができますか?
例えば:
class A
{
public:
int add(int x)
{
return x+x;
}
};
int main()
{
typedef int (A::*pointer)();
pointer func = &A::add;
A objt;
B objt2;
obt2.*func(2);// the compiler give me an error of incompatible with object type ‘B’
return 0;
}