为了账号安全,请及时绑定邮箱和手机立即绑定

当数据成员是double类型的时候,为什么会和string类型冲突?

#include <iostream>
#include <string>
using namespace std;

class Cylinder
{
public:
    Cylinder()
    {
        height=0;
        radius=0;
        PI=3.1415926;
    }
    void SetPi(double PI)
    {
        PI=3.1415926;
    }
    string  GetPi()
    {
   cout<< PI<<",";
    }
    void SetRadius(double b)
    {
        radius=b;

    }
    string GetRadius()
    {

     cout<< radius<<",";
    }
    void SetHeight(double a)
    {

        height=a;
    }
    string GetHeight()
    {
       cout <<height;
    }
    void Volume(double a,double b)
    {
       double c;
        c=(PI*b*b*a);
      cout<<c;
    }
    void Area(double a,double b)
    {
        double d;
        d=(2*PI*b*a);
   cout<< d;
    }
private:
    double height;
    double radius;
    double PI;
};

 int main()
 {
 Cylinder cy;
double a,b;
cin>>a>>b;
 cy.SetHeight(a);
 cy.SetRadius(b);
cy.GetPi();

cy.GetHeight();
cout<< ",";
 cy.GetRadius();cout<<",";
 cy.Volume(a,b);cout<<",";
 cy.Area(a,b);
 cout<<endl;
 return 0;

     }

**** 2016/10/30 15:06:39

求解什么地方错了
15:10:56
**** 2016/10/30 15:10:56

大神求解

**** 2016/10/30 15:11:00

在线等
15:15:10
**** 2016/10/30 15:15:10

#include <iostream>
#include <string>
using namespace std;

class Cylinder
{
public:
    Cylinder()
    {
        height=0;
        radius=0;
        PI=3.1415926;
    }
    void SetPi(double PI)
    {
        PI=3.1415926;
    }
    string  GetPi()
    {
   cout<< PI<<",";
    }
    void SetRadius(double b)
    {
        radius=b;

    }
    string GetRadius()
    {

     cout<< radius<<",";
    }
    void SetHeight(double a)
    {

        height=a;
    }
    string GetHeight()
    {
       cout <<height;
    }
    void Volume(double a,double b)
    {
       double c;
        c=(PI*b*b*a);
      cout<<c;
    }
    void Area(double a,double b)
    {
        double d;
        d=(2*PI*b*a);
   cout<< d;
    }
private:
    double height;
    double radius;
    double PI;
};

 int main()
 {
 Cylinder cy;
double a,b;
cin>>a>>b;
 cy.SetHeight(a);
 cy.SetRadius(b);
cy.GetPi();

cy.GetHeight();
cout<< ",";
 cy.GetRadius();cout<<",";
 cy.Volume(a,b);cout<<",";
 cy.Area(a,b);
 cout<<endl;
 return 0;

     }

正在回答

1 回答

string  GetPi()
    {
   cout<< PI<<",";
    }

这句不对,定义返回类型为string时,就必须返回一个string类型的值,这里需要定义为void,即不需要返回值,。下面的也一样

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C++远征之封装篇(上)
  • 参与学习       103409    人
  • 解答问题       701    个

封装--面向对象的基石,本教程力求帮助小伙伴们即学即会

进入课程

当数据成员是double类型的时候,为什么会和string类型冲突?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信