问题
填空题
有如下程序:
#include <iostream>
using namespace std;
class shapes
protected:
int x,y;
public:
void setvalue(int d, int w=0)
x=d;
y=w;
virtual void disp()=0;
;
class square : public shapes
public:
void disp()
cout<<x*y<<end1;
;
int main()
shapes *ptr;
square s1;
ptr=&s1;
ptr->setvalue(10,5);
ptr->disp();
return 0;
执行上面的程序将输出 【14】 。
答案
参考答案:50
解析: 本题中基类shapes是一个抽象类(拥有纯虚函数disp())。在主函数中定义了抽象类的对象指针ptr,并给它赋值派生类square的对象s1,然后进行赋值和输出的操作。