프로그래밍/C++
함수 오버라이딩(overriding)
리뷰하는 (게임)프로그래머_리프TV
2010. 4. 3. 12:49
오버로딩과 비슷한 그 이름
오버라이딩,
하지만 엄연히 틀리다.
한글로 표현하자면, 음,
오버로딩 = 함수 중복 정의?
오버라이딩 = 함수 재 정의?
정도로 표현 할 수 있을까 모르겠다.
#include <iostream>
class AA
{
public:
void ShowData(){std::cout << "Class A ShowData()" << std::endl;}
};
class BB : public AA
{
public:
// AA에 showData()는 오버라이딩 되었다.
void ShowData(){std::cout << "Class B ShowData()" << std::endl;}
};
void main()
{
AA a; // AA객체의 a인스턴스
BB b; // BB객체의 b인스턴스
a.ShowData(); // AA에 ShowData()를 불러 오지만.
b.ShowData(); // BB에서 오버라이딩을 통해 BB의 ShowData()를 불러 온다.
// 결과
// Class A ShowData()
// Class B ShowData()
}
크게 어려운 부분은 없다.