永发信息网

在C++里,创建类FLOAT,包含一个浮点类型的数据成员.对该类重载所有的四则运算符。

答案:1  悬赏:20  手机版
解决时间 2021-03-06 07:31
  • 提问者网友:棒棒糖
  • 2021-03-05 13:52
在C++里,创建类FLOAT,包含一个浮点类型的数据成员.对该类重载所有的四则运算符。
最佳答案
  • 五星知识达人网友:轻熟杀无赦
  • 2021-03-05 14:10
经过俺挑灯夜战n天,应该是这样的了:
 那几个警告可以忽视,你要不想看他,前边加个(float)强制类型转换

#include
class FLOAT
{
private:
public:
 float fVar;
 FLOAT()//默认构造函数,这个必须得有,否则编译通不过
 {
// fVar=0;
 }
 FLOAT(float fT)//构造函数
 {
 fVar=fT;
 }
    virtual ~FLOAT()//析构
 {
 }
 
 FLOAT operator + (FLOAT & fCurr)//重载+
 {
  this->fVar=this->fVar+fCurr.fVar;
  return * this;
 }
 FLOAT operator - (FLOAT & fCurr)
 {
  this->fVar=this->fVar-fCurr.fVar;
  return * this;
 }
 FLOAT operator * (FLOAT & fCurr)
 {
  this->fVar=this->fVar*fCurr.fVar;
  return * this;
 }
 FLOAT operator / (FLOAT & fCurr)
 {
  this->fVar=this->fVar/fCurr.fVar;
  return * this;
 }
 FLOAT operator = (FLOAT & fSour)
 {
  fVar=fSour.fVar;
  return * this;
 } 
};
void main()
{
FLOAT r=FLOAT(1.1)+FLOAT(1.2)-FLOAT(1.3)*FLOAT(1.4)/FLOAT(1.5);
//看看结果对不对:1.3*1.4/1.5=1.213333333,1.1+1.2-1.213333=1.086666667
printf("%f",r.fVar);//<<运算符不能重载,用个printf显示算了
 
}

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯