问题 填空题

有如下程序:
#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,然后进行赋值和输出的操作。

单项选择题
名词解释