C,C++> 연산자 오버로딩
2022. 8. 18.
연산자 함수 기본형 연산자 덧셈 연산자는 피연산자 타입이 달라도 정확하게 연산한다. 정수형과 실수형은 비트구조가 다르지만 덧셈이 가능하다. 왜냐하면 덧셈 연산자가 피연산자 타입에 따라 오버로딩되어 있기 때문이다. int +(int, int); double +(double, double); 아마 이런 식으로 오버로딩되어 있을 것이다. 그러나 연산자 중복 정의는 기본 타입에서 적용되지만 직접 만든 클래스는 이런 규칙이 적용되지 않는다. 따라서 컴파일러에게 방법을 알려줘야 하는데 이것을 연산자 오버로딩이라고 한다. 아마 Complex +(Complex, Complex); 이렇게 새로 만들어질 것이다. 연산자 함수 클래스에 멤버 함수를 정의하여 덧셈을 할 수 있겠지만 직관적이지 않다. 연산자는 모양이 특이한 함..