Будет ли виртуально вызываться указатель на виртуальную функцию?

Будет ли действительным указатель функции на функцию-член класса, объявленную виртуальной?

class A {
public:
    virtual void function(int param){ ... };
}

class B : public A {
    virtual void function(int param){ ... }; 
}

//impl :
B b;
A* a = (A*)&b;

typedef void (A::*FP)(int param);
FP funcPtr = &A::function;
(a->*(funcPtr))(1234);

Будет ли вызываться B :: function ?

6
задан Rob Kennedy 19 November 2010 в 19:15
поделиться