I try to understand somecode, which could be summarized into something like this:
class FooClass {
public:
void Foo();
static void (FooClass::*Foo_Original)();
};
void (FooClass::* FooClass::Foo_Original)() = 0;
void FooClass::Foo() {
(this->*Foo_Original)();
}
This is part of a more complex dll solution in Visual Studio. From debugger I found that method Foo()
is called from some other dll. Can someone explain what this syntax means? What is it supposed to do?
That's not duplicate to this one. C++: Pointer to class data member Please, be more thoughtful