본문 바로가기

Programming/C & C++

연산자 오버로딩(전역 연산자 함수로 작성법)

클래스의 연산자 함수를 정의하는 방법은 다음 두가지가 있다.

클래스의 멤버 함수로 작성한다.
전역 함수로 작성한다.



const Time operator+(const Time &T1,const Time &T2) //받는 인수가 2개이다.

{
     Time R;    

     R.sec=T1.sec + T2.sec;
     R.min=T1.min + T2.min;
     R.hour=T1.hour + T2.hour; 

     R.min += R.sec/60;
     R.sec %= 60;
     R.hour += R.min/60;
     R.min %= 60;

    
return R;
}

ㅁ 멤버 연산자와 전역 연산자의 차이

    A+B  -> 멤버 : A.operator +(B)
           -> 전역 : operator + (A,B)

반응형