C++ 연산자 함수
대망의 연산자 오버로딩이다. 연산자 오버로딩은 말 그대로 연산자를 함수로 오버로딩이 가능하다는 것을 의미한다. 다음의 예시 있다고 가정해보자. Num A; Num B; Num C; A = B + C; 이 전에 클래스는 타입이라고 얘기했던 것을 기억해보자. 즉, 기본적인 자료형이 제공하는 모든 연산이 클래스에서도 가능하다는 것인데 그 중에는 사칙연산도 포함이 된다. 그럼 이것이 어떻게 가능할까? 막상 저대로 컴파일을 한다면 에러가 나올 것이다. 이를 해결하기 위해 나온게 바로 연산자 오버로딩이다. #include class Num { private: int x; public: Num() {} Num(int _x) : x(_x) {} const Num operator+(const Num& right) con..
C++/C++98
2023. 8. 5. 15:29