교환법칙1 [ C++ ] 연산자 오버로딩의 교환 법칙 교환 법칙이란 'A+B= B+A'을 뜻한다. 즉, 피연산자의 위치는 연산의 결과에 아무런 영향을 미치지 않는다는 법칙인데, 대표적으로 곱셈 연산과 덧셈 연산이 있다. 먼저 예제를 보자. Dot 클래스에 곱셈 연산자가 오버로딩이 되어있다. 객체 * 뒤에 int형 데이터가 오면 x와 y좌표 값을 데이터만큼 곱해준다. 그래서 dot2는 dot1에 2를 곱하여 x좌표가 2, y좌표가 4가 된 것을 확인할 수 있다. 근데 교환법칙에 의해 * 뒤에 객체가 오게 되면 어떻게 해야 할까? 이런 문제가 발생한다. 이전 연산자 오버로딩 포스트에서 전역 함수에 의한 연산자 오버 로딩이 필요한 경우가 있다고 했는데, 이럴 때 필요하다. 다음과 같이 해결하면 된다. 그럼 전역함수에 의해서 멤버 함수의 연산자 오버 로딩에 접근할.. 2019. 10. 10. 이전 1 다음