C++虚函数的应用
发布网友
发布时间:2022-04-26 21:42
我来回答
共1个回答
热心网友
时间:2022-05-02 04:29
只能给你个思路,具体代码还要你自己来补充,毕竟学到虚函数这一块,相信你在代码编写方面已经足以解决问题了,只是不大明白怎么使用虚函数而已
事实上虚函数说起来只是提供一个框架,限定了返回值的类型,参数类型和个数,但是具体的函数实现却没有提供,这也是为了让派生类实现多态性的手段。
以下是shape这个基类的一个求面积area()的虚函数,以及他的派生类cylinder对这个虚函数的继承和多态(注意,构造函数不能是虚函数)。当在基类中声明area()为虚函数的时候,意味着你希望area()函数的实现(也就是具体的函数代码编写)在shape的派生类cylinder中能够修改,也就意味着,如果是圆柱体,则写圆柱体的面积的实现代码,如果是圆锥则写圆锥的面积的实现代码
class shape{
public:
shape (){ };
virtual flaot area();
}
class cylinder :public shape{
public:
cylinder (){};
float area (){//具体的计算cylinder的代码};
}
main(){
cylinder A;
float A_area;
A_area=A.area();
}
//你需要的是把代码完善就好,如果还有什么地方不明白的,可以Hi我