오버라이딩과 정적바인딩
overwrite : 덮어쓰다
overriding : 부모클래스보다 자기의 멤버(변수, 메쏘드)가 우선!
-> 오버라이팅x 덮어씌여지지 않음(기존것이 살아있음!)
overloading : 함수의 매개변수를 다르게 재정의 할 수 있다.
정적바인딩
class Base{
public:
void print(){std::cout<<"Base"<<std::endl;}
}
class Derived : public Base{
public:
void print(){std::cout<<"Derived"<<std::endl;}
}
///
Derived d;
Base *b = &d; >> 문제없음(부모의 포인터가 자식도 가르킬수있음)
///
int main()
{
Base *b = new Derived();
b->print(); // print [Base]
delete b;
}
정적 바인딩 :: 모호한 포인터의 역할은 타입을 따라간다!!
Author And Source
이 문제에 관하여(오버라이딩과 정적바인딩), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@hopark/virtual-가상상속저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)