帮我看下代码有错误谢谢

5204711353 2005-01-22 06:09:49
#include <iostream.h>
#include <math.h>
class time
{
private:
int hours;
int minutes;
public:
time(int h=0,int m=0);
friend time operator +(const time &a,const time &b);
friend time operator -(const time &a,const time &b);
friend time operator *(const time &a,double & b);
friend time operator *(double &b,const time &a);
friend ostream & operator<<(ostream &a,const time &b);
};
time::time(int h,int m)
{
hours=h;
minutes=m;
}
time operator +(const time &a,const time &b)
{
time sum;
sum.minutes=a.minutes+b.minutes;
sum.hours=a.hours+b.hours+sum.minutes/60;
sum.minutes%=60;
return sum;
}
time operator -(const time &a,const time &b)
{
time sum;
int tof1,tof2;
tof1=b.minutes+b.hours*60;
tof2=a.minutes+a.hours*60;
sum.minutes=abs(tof1-tof2)%60;
sum.hours=abs(tof1-tof2)/60;
return sum;
}
time operator *(const time &a,const double &b)
{
time sum;
long int i=a.hours*b*60+a.minutes*b;
sum.hours=i/60;
sum.minutes=i%60;
return sum;
}
time operator *(double &b,const time &a)
{
return a*b;
}
ostream & operator<<(ostream & x,const time &b)
{
x<<b.hours<<"hours"<<b.minutes<<"minutes";
return x;
}
int main()
{
time a;
time b(5,40);
time c(2,55);
cout<<"a,b,and c:\n";
cout<<a<<";"<<b<<":"<<c<<endl;
a=b+c;
cout<<"b+c:"<<a<<endl;
a=b*2.75;
cout<<"b*2.75:"<<a<<endl;
cout<<"10*b:"<<10*b<<endl;
return 0;
}
...全文
38 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

64,646

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧