
关于c++的问题,求解答
#include<iostream>usingnamespacestd;classcontainer{public:floatradius;virtualfloatare...
#include<iostream>
using namespace std;
class container{
public:
float radius;
virtual float area(float radius)=0;
virtual float volume(float radius)=0;
};
class cube:public container{//正方体
public:
cube(float a=0);
float area(float radius);
float volume(float radius);
};
cube::cube(float a)
{
radius=a;
}
float cube::area(float radius)
{
return (radius*radius*6);
}
float cube::volume(float radius)
{
return (radius*radius*radius);
}
class sphere:public container{//球体
public:
sphere(float a=0);
float area(float radius);
float volume(float radius);
};
sphere::sphere(float a)
{
radius=a;
}
float sphere::area(float radius)
{
return (4*radius*radius);
}
float sphere::volume(float radius)
{
return (4*radius*radius*radius/3);
}
class cylinder:public container{//圆柱体
private:
float h;
public:
cylinder(float a=0,float b=0);
float area(float radius,float h);
float volume(float radius,float h);
};
float cylinder::area(float radius,float h)
{
return (2*radius*radius+2*radius*h);
}
float cylinder::volume(float radius,float h)
{
return (radius*radius*h);
}
int main()
{
cube c(2);
sphere s(2);
cylinder cc(2,2);
cout<<c.area<<" "<<c.volume<<endl;
cout<<cc.area;
return 0;
}
有问题额,求各位大大们解答,小弟感激不尽
错误都是指向cylinder cc(2,2)这一行,求指导 展开
using namespace std;
class container{
public:
float radius;
virtual float area(float radius)=0;
virtual float volume(float radius)=0;
};
class cube:public container{//正方体
public:
cube(float a=0);
float area(float radius);
float volume(float radius);
};
cube::cube(float a)
{
radius=a;
}
float cube::area(float radius)
{
return (radius*radius*6);
}
float cube::volume(float radius)
{
return (radius*radius*radius);
}
class sphere:public container{//球体
public:
sphere(float a=0);
float area(float radius);
float volume(float radius);
};
sphere::sphere(float a)
{
radius=a;
}
float sphere::area(float radius)
{
return (4*radius*radius);
}
float sphere::volume(float radius)
{
return (4*radius*radius*radius/3);
}
class cylinder:public container{//圆柱体
private:
float h;
public:
cylinder(float a=0,float b=0);
float area(float radius,float h);
float volume(float radius,float h);
};
float cylinder::area(float radius,float h)
{
return (2*radius*radius+2*radius*h);
}
float cylinder::volume(float radius,float h)
{
return (radius*radius*h);
}
int main()
{
cube c(2);
sphere s(2);
cylinder cc(2,2);
cout<<c.area<<" "<<c.volume<<endl;
cout<<cc.area;
return 0;
}
有问题额,求各位大大们解答,小弟感激不尽
错误都是指向cylinder cc(2,2)这一行,求指导 展开
2个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询