问题 填空题

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

单项选择题
单项选择题