내가 기본 클래스와 파생 클래스, 예를 들어,이 dynamic_cast는합니다 : 나는 아들에게 아버지 런타임에 변경하려면 내가 할 것이라는 점을 알고있다반대 작업을
class Base {
public:
Base();
virtual doSomthing();
};
class Derivative : class Base {
public:
Derivative();
virtual doSomthing();
};
을
Derivative& newDer = dynamic_cast<Derivative&>(baseInstance)
내 질문은 내가 어떻게 반대 작업을 할 수 있습니다 - 아들에서 아버지로 변경?
구체적인 캐스트 작업이 필요하지 않습니다. 컴파일러는 자동으로이를 해석합니다. – user0042
이 작업을 수행해야하는 이유는 파생 클래스가 기본 클래스의 모든 속성을 갖기 때문입니다. 그리고 일반적으로 기본 클래스에 대한 포인터 또는 참조를 만들지 만 파생 클래스를 할당하면 컴파일 타임에 암시 적 파생 - 기반 변환이 발생합니다. – Carl
간단하게 지정할 수 있습니다. Derivate **는 ** Base입니다. –