Чем вам очень понравилось! это именно то, что я искал! :)
у написать указатель в C ++ (или в C ++ 0x), который будет указывать на оператор класса, скажем, A или B. Есть ли способ сделать это?
Конечно, есть такой синтаксис, как
int (A::*_p) ();
но это не решает эту проблему. Я хочу сделать общий указатель, не указывая для него базовый класс - только указатель на «оператор-функцию»
#include <thread>
#include <iostream>
using namespace std;
class A
{
public:
int operator()()
{
return 10;
}
};
class B
{
public:
int operator()()
{
return 11;
}
};
int main()
{
A a;
int (*_p) ();
_p = a.operator();
cout << _p();
B b;
_p = b.operator();
cout << _p();
}