面向对象程序设计作业参考答案(3)

2019-03-15 15:14

输出结果如下: a=0 b=0 c=0 a=1 b=0 c=0 a=1 b=3 c=0 a=1 b=3 c=5

8、有以下程序,请完成下面的工作: ① 阅读程序,写出运行时输出的结果。 #include #include using namespace std; class A{ public:

A(){cout<<\ ~A(){cout<<\};

class B : public A {

public:

B(){cout<<\ ~B(){cout<<\};

class C : public B {

public:

C(){cout<<\ ~C(){cout<<\};

int main() {

C c1; return 0; }

输出结果如下: constrcting A constrcting B constrcting C destrcting C destrcting B destrcting A

习题六

4、写一个程序,定义抽象基类Shape,由它派生出3个派生类,Circle(圆形)、Rectangle(矩形)、Triangle(三角形),用一个函数printArea分别输出以上三只的面积,3个图形的数据在定义对象时给出。 代码如下:

#include using namespace std; ///基类Shape class Shape {

public:

void virtual printArea() = 0;//纯虚函数 };

//派生类Circle

class Circle : public Shape {

public:

Circle(double r = 0):radius(r){}//构造函数

void printArea(){cout<<3.14159 * radius * radius<

double radius;//数据成员,表示半径 };

//派生类Rectangle

class Rectangle : public Shape {

public:

Rectangle(double w,double h):width(w),height(h){}//构造函数 void printArea(){cout<

double width;//数据成员,表示宽

double height;//数据成员,表示长 };

//派生类Triangle

class Triangle : public Shape {

public:

Triangle(double w,double h):width(w),height(h){} //构造函数 void printArea(){cout<

double width;//数据成员,表示底

double height;//数据成员,表示高 };

//主函数 int main() {

Shape *s;

Circle circle(1.0);

Rectangle rectangle(1.0,1.0); Triangle triangle(1.0,1.0); s = &circle; s->printArea(); s = &rectangle; s->printArea(); s = ▵ s->printArea(); return 0; }


面向对象程序设计作业参考答案(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:寰神结炼化物品程式、隐藏物品、隐藏人物加入

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: