函数覆盖不在c ++中工作

时间:2014-09-11 12:18:47

标签: c++ oop overloading

class parent
{
  public:
    virtual void print()
    {
      printf("STUFF");
    }
};

class child : public parent
{
   public:
     virtual void print()
     {
        printf("other stuff");
     }
 };

 int main()
 {
    parent par = new child;
    par.print();
  }

当我尝试这个时,它总是使用父函数而不是子函数。我试图让它使用子函数。

1 个答案:

答案 0 :(得分:-1)

class parent
{
public:
    virtual void print()
    {
        printf("STUFF");
    }
};

class child : public parent
{
public:
    virtual void print()
    {
        printf("other stuff");
    }
};

int main()
{
    parent *par = new child;
    par->print();
    delete par;
    par = NULL;
}