c++对象学习之-时间类0

来源:互联网 发布:智库服务大数据平台 编辑:程序博客网 时间:2024/05/22 15:13

程序的头文件Time.h

#ifndef TIME_H_#define TIME_H_class Time{public:Time();Time(int h, int m = 0);void add_hour(int h);void add_minute(int m);void reset(int h = 0, int m = 0);Time operator+ (const Time & t) const;void display() const;private:int hours;int minutes;};#endif


类方法实现文件Time.cpp

#include <iostream>#include "Time.h"using namespace std;Time::Time(){hours = minutes = 0;}Time::Time(int h, int m){hours = h;minutes = m;}void Time::add_hour(int h){hours += h;}void Time::add_minute(int m){minutes += m;// hours += minutes / 60;add_hour(minutes / 60);minutes %= minutes % 60;}void Time::reset(int h, int m){hours = h;minutes = m;}Time Time::operator+ (const Time & t) const{Time sum;sum.minutes = minutes + t.minutes;sum.hours = hours + t.hours + sum.minutes / 60;sum.minutes %= 60;return sum;}void Time::display() const{cout << hours << " hours " << minutes << " minutes";}


程序的主程序main.cpp

#include <iostream>#include "Time.h"using namespace std;int main(){Time p;Time rest(2, 40);Time work(5, 55);Time total;cout << "计划时间是: ";p.display();cout << endl;cout << "休息时间是: ";rest.display();cout << endl;cout << "工作时间是: ";work.display();cout << endl;total = rest + work;cout << "总的时间是: ";total.display();cout << endl;Time morerest(3, 28);cout << "更多的休息时间是: ";morerest.display();cout << endl;total = morerest.operator+(total);cout << "又是总的时间: ";total.display();cout << endl;return 0;}


0 0
原创粉丝点击