![](https://lstatic.shangxueba.com/jiandati/pc/images/pc_jdt_tittleico.png)
有基类SHAPE,派生类CIRCLE,声明如下变量: SHAPE shape1,*p1; CIRCLE circle1,*q1; 下列哪些项是“派生类对象替换基类对象”。
A.p1=&circle1;
B.q1=&shape1;
C.shape1=circle1;
D.circle1=shape1;
![](https://lstatic.shangxueba.com/jiandati/pc/images/jdt_q_ckda.png)
![](https://lstatic.shangxueba.com/jiandati/pc/images/jdt_panel_vip.png)
![](https://lstatic.shangxueba.com/jiandati/pc/images/jdt_q_wyda.png)
- · 有3位网友选择 B,占比37.5%
- · 有2位网友选择 D,占比25%
- · 有2位网友选择 C,占比25%
- · 有1位网友选择 A,占比12.5%
A.p1=&circle1;
B.q1=&shape1;
C.shape1=circle1;
D.circle1=shape1;
[说明]
以下C++代码使用虚函数实现了同一基类shape派生出来的Class rectangle、Class triangle、Class circle实现了计算矩形、圆形面积的计算。仔细阅读以下代码,将(n)处语句补充完整。
[代码5-1]
include<iostream.h>
define PI 3.14159
class shape {//基类
protected:
(1);
public:
(2);
(3);
};
[代码5-2]
class rectangle: public shape {
public:
rectangle (int x2,int y2,int r2): (4) {};
double area () {return x*y; };
};
class circle: public shape {
public:
circle (int x3,int y3,int r3):(5){};
double area () {return r*r*PI; };
};
[代码5-3]
void main ()
{
rectangle r (10,20,0);
circle c (0,0,30);
shape (6);
cout<<"长方形面积="<<s1->area () <<endl;
cout<<"圆形面积="<<s2->area () <<endl;
}
[运行结果]
长方形面积=200
圆形面积=2827.43
A、Shape *s;
B、void function(Shape *s);
C、void function(Shape& s);
D、Shape s;
A. Line、Circle、Pset和Line、Shape控件
B. Line、Circle、Pset
C. Line、Circle、Poine方法
D. Line、Shape控件
A、COMPLEX *(COMPLEX c1, COMPLEX c2);
B、COMPLEX * (COMPLEX c2);
C、COMPLEX operator * (COMPLEX c1, COMPLEX c2);
D、COMPLEX operator * (COMPLEX c2);
A、虚函数与一般成员函数在基类中没什么区别
B、虚函数不能被调用,而一般成员函数可以
C、虚函数不能定义函数体,而一般成员函数可以
D、虚函数只能定义一个,而一般成员函数可以多个
为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!