首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

为何这个程序运行结果错了

2013-11-06 
为什么这个程序运行结果错了#include iostreamusing namespace stdclass Salary{ public:Salary(double

为什么这个程序运行结果错了
#include <iostream>
using namespace std;
class Salary
{ public:
      Salary(double b,double s,double r,double w,double e);

      void setWage(double b){ Wage=b;  }
      double getWage(){ return Wage;  }

  void setSubsidy(double s){Subsidy=s; }
  double getSubsidy(){ return Subsidy;  }

      void setRent(double r){Rent=r; }
      double getRent(){ return Rent;  }

      void setWaterFee(double w){WaterFee=w; }
      double getWaterFee(){ return WaterFee;  }

      void setElecFee(double  e){ ElecFee=e; }
      double getElecFee(){ return  ElecFee;  } 

      double RealSalary(){ return Wage+Subsidy-Rent-WaterFee-ElecFee;}
   private:
      double Wage;
  double Subsidy;
  double Rent;
  double WaterFee;
  double ElecFee;
};


Salary::Salary(double b=0.0,double s=0.0,double r=0.0,double w=0.0,double e=0.0) 
  {
    Wage=b;
Subsidy=s;
        Rent=r;
        WaterFee=w;
        ElecFee=e;
  }

int main()
{
  Salary A(4000,500,1000,300,200);
  A.getWage();
  cout<<"Wage="<<A.getWage<<endl;
  A.RealSalary();
  cout<<"实发工资= "<<A.RealSalary<<endl;
  return 0;
}
[解决办法]

Salary A(4000,500,1000,300,200);
  A.getWage();
  cout<<"Wage="<<A.getWage()<<endl;
  A.RealSalary();
  cout<<"实发工资= "<<A.RealSalary()<<endl;
  return 0;

注意两个函数要加上括号(),你那两个直接是A.getWage和A.RealSalary错的
[解决办法]
引用:
Salary A(4000,500,1000,300,200);
  A.getWage();
  cout<<"Wage="<<A.getWage()<<endl;
  A.RealSalary();
  cout<<"实发工资= "<<A.RealSalary()<<endl;
  return 0;

注意两个函数要加上括号(),你那两个直接是A.getWage和A.RealSalary错的

还有一点,你没析构

热点排行