一路向西电影完整版
香港三级你的位置:一路向西电影完整版 > 香港三级 > 色姐姐激情网 李长河 汉文主页 本质题目三级页面(覆盖栏目,用于放弃对应三级页面) 中国地质大学(武汉)老师个东谈主主页系统
色姐姐激情网 李长河 汉文主页 本质题目三级页面(覆盖栏目,用于放弃对应三级页面) 中国地质大学(武汉)老师个东谈主主页系统

2024-10-24 13:00    点击次数:181

  

色姐姐激情网 李长河 汉文主页 本质题目三级页面(覆盖栏目,用于放弃对应三级页面) 中国地质大学(武汉)老师个东谈主主页系统

本质十八 虚函数与多态、纯虚函数

 一.本质想法

1.  在掌抓接受与派生干系的基础上,进一步相识虚函数与多态性的干系,罢了运转时的多态。

2.  学会界说和使用纯虚函数

二、本质实质

1.表率:了解"单界面,多次序"的认识。现存称为figure的基类,存放了各二维对象(三角形、矩形和圆形三个类)的各维数据,set_dim()诞生数据,是程序成员函数。

show_area()为虚函数,因为蓄意各对象的面积的次序是不同的。

【身手】

#include < iostream > 

using namespace std;

class figure{

protected:

double x,y;

苏畅麻豆

public:

void set_dim(double i,double j=0)

{  x=i;  y=j;  }

virtual void show_area()

{  cout<<"No area computation defined for this class.\n";

}

};

class triangle:public figure{

public:

void show_area()

{ cout<<"Triangle with height "<< x<<" and base "<< y<<" has an area of "<< x*0.5*y<< endl;

}

};

class square:public figure{

public:

void show_area()

{  cout<<"Square with dimensions "<< x<<" and "<< y<<" has an area of "<< x*y<< endl;

}

};

class circle:public figure{

public:

void show_area()

{  cout<<"Circle with radius "<< x<<" has an area of "<<3.14159*x*x<< endl;

}

};

int main(){

figure *p;

triangle t;

square s;

circle c;

p=&t;

p->set_dim(10.0,5.0);

p->show_area();

p=&s;

p->set_dim(10.0,5.0);

p->show_area();

p=&c;  p->set_dim(10.0);

p->show_area();

return 0;

}   

【条目】

(1) 建造工程,韩国伦理片录入上述身手,调试运转并纪录运转效果。

(2) 修改上述身手,将virtual void show_area()中的virtual去掉,重新调试运转不雅察效果有何变化?为什么?

(3) 修改上述身手进口函数,使其动态建造三角形、矩形和圆形3个对象,通过基类指针窥察这3个对象,然后开释这3个对象。

(4) 修改类界说中的析构函数,使之适哄骗户动态界说对    2、使用纯虚函数和概括类对本质十六中的题1进行阅兵。

【条目】先界说一个概括类Element,提供清晰、求面积等大众接口(虚函数),派生出Point、Line、Circle等图形元素类,并重新界说(override)这些虚函数,完成各自的任务。

在这里,Element是概括基类,它不成提供具体的清晰操作,应将其成员函数界说为纯虚函数。只好选拔指向基类的指针或对基类的援用进行调用,罢了的才是动态绑定,

完成运转时的多态性。

3、编写蓄意定积分的类。选拔纯虚函数和概括基类往往是建造一个类的框架,并非是要建造一个齐备的类。条目领先界说定积分概括基类basic_inte,

该基类数据包括积分傍边限度、分辩区间的数目、步长和定积分值,同期包括一个蓄意积分的纯虚函数:virtual void integrate()=0。

第二步,由该基类派生出矩形法、梯形法和辛普生定积分类:rectangle、ladder和simpson。

第三步,编写一个积分函数,以指向定积分概括基类basic_inte的指针为参数,罢了动态的多态性。       



Powered by 一路向西电影完整版 @2013-2022 RSS地图 HTML地图

Copyright Powered by站群 © 2013-2024