求大神帮忙解决这道题,谢啦c++语言

基类不是提供了对外的成员方法吗,修改半径的成员方法。

class Round
{
    private:
        double r;
    public:
        Round(double radius) {r = radius;}
        double GetArea() {return 3.14159*r*r;}
        double GetPerimeter() {return 2*3.14159*r;}
        double GetRadius() {return r;}
        void ModifyRadius(double radius) {r = radius;}
};

class Cylinder : public Round
{
    private:
        double height;
    public:
        Cylinder(double h,double radius) : Round(radius) {height = h;}
        void Modify(double h,double radius) {height = h;ModifyRadius(radius);}
        double GetVolume() {return GetArea()*height;}
        double GetSurfaceArea() {return GetPerimeter()*height;}
        void Display() {cout<<"r="<<GetRadius()<<",h="<<height<<endl;}
};

void main()
{
    Cylinder c(5,2.2);
    cout<<"体积:"<<c.GetVolume()<<",表面积:"<<c.GetSurfaceArea()<<endl;
    c.Modify(2.2,5);
    cout<<"体积:"<<c.GetVolume()<<",表面积:"<<c.GetSurfaceArea()<<endl;
}

 

就是不知道派生类中修改基类中私有半径r的值如何修改,好难啊,求大神帮帮

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps: 问答会员年卡【8折】购 ,限时加赠IT实体书,即可 享受50次 有问必答服务,了解详情>>>https://t.csdnimg.cn/RW5m