多态性抽象类问题找不出错误谁能帮忙看一下

#include
using namespace std;
class Shape()
{public:
virtual int Area() const=0;
};
class Rectangle: public Shape{
protected:
int length,width;
public:
Rectangle(int l=0,int w=0)
{
length=l;
width=w;
}
virtual int Area()const
{
return length*width;
}
};
int main()
{ Shape *p;
Rectangle r(3,5);
p=&r;
cout<Area()<<endl;
return 0;
}

2个回答

把子类的virtual去掉,否则就覆盖了

 class Shape()

后面的一对括号不要。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问