본문 바로가기

Window Course/C++

Overloading (오버로딩)

Polymorphism(다형성)의 하나이다.

Overloading 에는 Function Overloading(함수오버로딩)과 Operator Overloading(연산자오버로딩)이 있다.

함수 오버로딩이란 같은 이름의 함수를 여러개 만들수 있을을 일컫는 것이다.
단! 같은 이름의 함수를 만들기 위해서는 전달인자의 목록이 다르거나 리턴값이 달라야만 한다.

연산자 오버로딩은 사실 함수 오버로딩이다.
 연산자를 오버로딩 함으로써 우리가 원하는 객체연산을 만들기 때문에 특별히 연산자 오버로딩이라 이름을 붙여준 듯 하다.
그리고 연산자 오버로딩 시에는 그냥 + - 부호만 쓰며 더하기 빼기 같은 연산자와 똑같기때문에 그와 구분을 주기 위해서
'operator'를 쓰고서 그뒤에 원하는 연산자를 써서 사용한다.


cf) Overriding 
오버라이딩은 부모클래스의 멤버 변수를 자식 클래스가 재정의 하는 것을 일컫는다.
그런데 정확하게는 오버라이딩을 재정의한다고 생각하면 안된다.
완벽한 재정의를 의미하기 위해서는 부모클래스에서 virtual 함수로 선언했을 경우에 완벽한 오버라이딩이 이루어진다.

'Window Course > C++' 카테고리의 다른 글

reference(참조자)  (0) 2010.11.02
This 포인터  (0) 2010.11.02
생성자/소멸자(파괴자)  (0) 2010.11.02
인라인함수  (0) 2010.11.02
디폴트매개변수  (0) 2010.11.02