작성
·
213
0
안녕하세요. 큰돌님.
이직 준비를 하면서 코딩테스트 준비를 빠르게 하기 위해 C++을 새롭게 공부하고 있습니다.
다름이 아니라 설명중 의문이 생겨서 질문드립니다.
이는 연산자(operator) 오버로딩입니다. 이는 말 그대로 연산자를 오버로딩(하위 클래스에서 재정의)하는 것이죠.
여기서 오버로딩이라고 말씀하셨는데, 제가 아는 오버로딩의 개념과 조금 다르게 나와있습니다.
제가 오버라이딩의 개념과 헷갈려서 그런지 모르겠지만, 혹시 C++에서는 오버로딩이 하위클래스에서 재정의하는 의미로 사용되나요?
확인하시고 알려주시면 감사하겠습니다!
답변 1
0
안녕하세요 최동철님 ㅎㅎ
오버라이딩 보다는 오버로딩이라고 보시는게 맞습니다.
그 이유는 오퍼레이터 +, -, *, / 등의 의미를 변경하지 않으며 그저 오퍼레이터의 대상이 바뀌는 것 뿐이기 때문입니다.
참고 : 교안에서는 < 라는 연산자를 오버로딩하는데 이는 그냥 int, float의 기본타입이 아니라 좀 더 복잡한 어떠한 객체를 기반으로 확장하고 있습니다.
감사합니다.
주홍철 올림.