设计一个时间类Time,要求: (1)包含时(hour)、分(minute)和秒(second)私有数据成员。 (2)包含构造函数,重载关于一时间加上另一时间的加法运算符+、重载关于一时间减去另一时间
来源:互联网 发布:淘宝网货源网 编辑:程序博客网 时间:2024/05/24 04:26
#include<iostream>
using namespace std;
class Time
{
private:
int hour;
int minute;
int second;
public:
Time();
Time(int h, int m ,int s);
Time operator+(Time &t);
Time operator-(Time &t);
Time operator>>(Time &t);
Time operator<<(Time &t);
void setHour(int h )
{
hour=h;
}
void setMinute(int m)
{
minute=m;
}
void setSecond(int s)
{
second=s;
}
int getHour()
{
return hour;
}
int getMinute()
{
return minute;
}
int getSecond()
{
return second;
}
};
Time::Time()
{
hour=0;
minute=0;
second=0;
}
Time::Time(int h, int m ,int s)
{
hour=h;
minute=m;
second=s;
if(hour>=24)
hour=hour%24;
if(minute>=60)
hour=hour+1;
minute=minute%60;
if(second>60)
minute=minute+1;
second=second%60;
}
Time Time::operator +(Time &t)
{
return Time(hour+t.getHour(),minute+t.getMinute(),second+t.getSecond());
}
Time Time::operator-(Time &t)
{
return Time(hour-t.getHour(),minute-t.getMinute(),second-t.getSecond());
}
Time Time::operator >>(Time &t)
{
int h,m,s;
cout<<"inputTime1:"<<endl;
cin>>h>>m>>s;
hour=h;
minute=m;
second=s;
cout<<"inputTime2:"<<endl;
cin>>h>>m>>s;
t.setHour(h);
t.setMinute(m);
t.setSecond(s);
return Time(hour+t.getHour(),minute+t.getMinute(),second+t.getSecond());
}
Time Time::operator <<(Time &t)
{
cout<<t.getHour()<<':'<<t.getMinute()<<':'<<t.getSecond()<<endl;
return Time(hour+t.getHour(),minute+t.getMinute(),second+t.getSecond());
}
int main()
{
Time t1(1,2,3);
Time t2(2,3,4);
Time t3;
t3 = t1+t2;
t3 = t1>>t2;
t3<<(t1+t2);
}
运行结果:
inputTime1:
20 30 54
inputTime2:
14 25 25
10:56:19
Press any key to continue
- 设计一个时间类Time,要求: (1)包含时(hour)、分(minute)和秒(second)私有数据成员。 (2)包含构造函数,重载关于一时间加上另一时间的加法运算符+、重载关于一时间减去另一时间
- 设计一个日期类Date,,要求: (1)包含年(year)、月(month)和日(day)私有数据成员。 (2)包含构造函数,重载关于一日期加上天数的加法运算符+、重载关于一日期减去天数的减加运算符-
- 设计一个日期类Date,,要求: (1)包含年(year)、月(month)和日(day)私有数据成员。 (2)包含构造函数,重载关于一日期加上天数的加法运算符+、重载关于一日期减去天数的减加运算符-
- 设计一个时间类Time, 包括时,分,秒等私有数据成员。要求实现时间的基本运算,一个时间加上另一个时间。。
- 关于拷贝构造函数和重载成员运算符=
- 关于C++成员函数和运算符的重载
- 编写一个密码类,其中包含一个 str 密码字符串私有成员数据,一个“==”运算 符重载成员函数,用于比较用户输入的密码是否正确。并用数据测试该类。
- 8.3 编写一个密码类,其中包含一个 str 密码字符串私有成员数据,一个“==”运算 符重载成员函数,用于比较用户输入的密码是否正确。并用数据测试该类
- 包含动态分配成员的类 应提供拷贝构造函数,并重载"="赋值操作符
- Sql 一个时间与另一时间的比较
- 8.6 编写一个类,其中有一个 double 型私有数据成员 yuan(存放人民币数量,单位 为元),另外包含一个转换运算符重载成员函数以将 yuan 转换成美元(假设 1 美元对换 8.268 人民
- 关于重载拷贝构造函数和赋值运算符
- 关于运算符重载 成员函数运算符重载 友元函数运算符重载
- 重点:包含动态分配成员的类 应提供拷贝构造函数,并重载"="赋值操作符。
- 九周任务二:定义Time类中的<<和>>运算符重载,实现时间的输入输出
- 第八周任务二——关于时间函数运算符的重载
- 时间类--运算符重载函数--gyy
- 成员函数和运算符的重载
- android中关于tools:context="activity name"解惑
- misc_vi简单配置
- [Codeforces] 148A - Insomnia cure
- 一、centos上VNC Server配置
- 设计一个日期类Date,,要求: (1)包含年(year)、月(month)和日(day)私有数据成员。 (2)包含构造函数,重载关于一日期加上天数的加法运算符+、重载关于一日期减去天数的减加运算符-
- 设计一个时间类Time,要求: (1)包含时(hour)、分(minute)和秒(second)私有数据成员。 (2)包含构造函数,重载关于一时间加上另一时间的加法运算符+、重载关于一时间减去另一时间
- 我读过的计算机书籍(修改版)
- Eclipse插件安装 duplicate location求助
- Jeecg 的DataGridTag 表格属性
- kkkk
- Jeecg DataGridTag 的子标签们
- Jeecg DataGridTag 的子标签们 二
- unable to open the service tomcat 解决方式
- WEBSERVICE入门01:webservice概述