赋值运算符重载

    xiaoxiao2021-03-25  92

    赋值运算符重载

    类的声明

    // // Created by Rdw on 2017/3/9. // #ifndef PROJECT5_TIME_H #define PROJECT5_TIME_H #include <ostream> #include <istream> using namespace std; class Time { private: int hour; int minute; public: Time();//默认构造函数 Time(int h , int m);//构造函数 ~Time();//析构函数 friend ostream &operator<<(ostream &os , const Time &object); /*重载赋值运算符*/ Time &operator=(const Time&object); Time &operator+=(const Time&object); }; #endif //PROJECT5_TIME_H

    类的定义

    // // Created by Rdw on 2017/3/9. // #include "Time.h" Time::Time() { } Time::Time(int h, int m) { hour = h; minute = m; } Time::~Time() { } Time& Time::operator=(const Time &object) { hour = object.hour; minute = object.minute; return *this; } Time& Time::operator+=(const Time &object) { hour += object.hour; minute += object.minute; return *this; } ostream& operator<<(ostream &os, const Time &object) { os << object.hour << "hour " << object.minute << "minutes" ; os << endl; return os; }

    类的实现

    #include <iostream> #include "Time.h" using namespace std; int main() { Time time1 = Time(19,22); cout << time1; Time time11 = Time(22,22); cout << time11; Time time2 = time1; cout << time2; time2 += time11; cout << time2; }

    测试结果

    E:\Project5\cmake-build-debug\Project5.exe 19hour 22minutes 22hour 22minutes 19hour 22minutes 41hour 44minutes Process finished with exit code 0
    转载请注明原文地址: https://ju.6miu.com/read-15940.html

    最新回复(0)