C++试题精选----虚函数与多态----NO.3
Posted 敲代码的xiaolang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++试题精选----虚函数与多态----NO.3相关的知识,希望对你有一定的参考价值。
希望c++的入门者们闲暇之余,可以浏览思考,有什么问题欢迎留言或者私信。
虚函数与多态----NO.3
#include<iostream>
using namespace std;
const double PI=3.14;
class Container
{
public:
Container (double r)
{
banjing=r;
}
virtual double biaomianji()
{
return 0.0;
}
virtual double tiji()
{
return 0.0;
}
protected:
double banjing;
};
class Sphere:public Container
{
public:
Sphere(double r):Container(r)
{
}
double biaomianji()
{
return 4*PI*banjing*banjing;
}
double tiji()
{
return 4*PI*banjing*banjing*banjing/3;
}
};
class Cylinder:public Container
{
public:
Cylinder(double r,double h):Container(r)
{
height=h;
}
double biaomianji()
{
return PI*banjing*banjing*2+2*PI*banjing*height;
}
double tiji()
{
return PI*banjing*banjing*height;
}
private:
double height;
};
int main()
{
Sphere s(5.0);
Cylinder c(3.0,5.0);
cout<<"球类的表面积为:"<<s.biaomianji()<<endl;
cout<<"球类的体积为:"<<s.tiji()<<endl;
cout<<"圆柱类的表面积为:"<<c.biaomianji()<<endl;
cout<<"圆柱类的体积为:"<<c.tiji()<<endl;
return 0;
}
运行结果
有问题私聊博主或者在下面留言,如果有更好的解法也请留言,欢迎大家讨论,共同进步,一起学习。
“C++是面向对象编程,我也想面向对象编程。”
以上是关于C++试题精选----虚函数与多态----NO.3的主要内容,如果未能解决你的问题,请参考以下文章