클래스 A 와 B가 있는데 A 는 B를 상속한다.
만약 클래스 A에 operator== 를 구현하고자 한다면 상속된 B의 멤버 변수에 대한 비교도 포함을 시켜야 한다.
한가지 방법으로는 클래스 A안에서 B의 멤버변수들을 모두 비교해볼수도 있지만, 이는 좀 껄쩍지근하다.
게다가 B의 멤버변수가 많아지면, 타이프하기 구찮아지고 빼먹을 확률도 높다.
두번째 방법으로는 ParentClass::operator== 를 직접 호출하는게 있다. 우연히 발견한건데 이미 많은 사람들이 알고 있을지도 ... ㅋㅋ
아래의 코드를 보면 알수 있다.
'Programming > C & C++' 카테고리의 다른 글
gcc 4.3 포팅시 유의할 점 (1) | 2009.09.29 |
---|---|
해깔리는 STL resize() 와 reserve()에 대한 고찰 (0) | 2009.09.21 |
operator == in std::pair (0) | 2009.09.10 |
istream operator >> overriding into template class (0) | 2009.07.31 |
Linux 와 Window 에서 현재시간 값 얻어오기 (0) | 2009.04.14 |
댓글