Mega Code Archive

 
Categories / C++ / Class
 

Call virtual function through object pointer

#include <iostream> using namespace std; class base  {  public:    virtual void vfunc(void)     {       cout << "This is base's vfunc()." << endl;     } }; class derived1 : public base  {  public:    void vfunc(void)     {       cout << "This is derived1's vfunc()." << endl;     } }; class derived2 : public derived1 { }; int main(void) {    base *p, b;    derived1 d1;    derived2 d2;    p = &b;            p->vfunc();    p = &d1;           p->vfunc();    p = &d2;           p->vfunc();      }