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

#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;
}

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

 class Shape()

后面的一对括号不要。