제가 대학교 1학년 때 [명품 C++ Programming] 교재로 진행되는 C++ 수업에서 배운 내용을 교재와 ppt를 중심으로 정리한 내용입니다.
(2022.9 ~ 2022.12)
당시에 공부를 위해서 HWP 파일로 정리해 놓은 것을 그대로 올립니다.
🍑연산자 중복
개념
- operator overloading
- 동일한 연산 기호를 피연산자에 따라서 서로 다른 의미로 해석(다형성)
특징
- C++ 언어에 본래 있는 연산자만 중복 가능
- 피연산자의 타입이 다른 연산을 새로 정의해야함
- 함수를 통해 이루어진다(구현된다)
- 반드시 클래스와의 관계를 가진다
- 피연산자의 개수를 바꿀수는 없다
- 연산의 우선 순위 변경 불가
- 모든 연산자가 중복 가능한 것은 아님
연산자 함수
구현 방법
- 클래스의 멤버 함수
→ l-val 는 객체 자신으로 인식
- 외부 함수로 구현하고 클래스에 프렌드 함수로 선언
형식
리턴타입 operator연산자(매개변수리스트);
→ bool operator == (Color op1, Color op2);
주의점