나는 wikipedia에서 RTTI의 예를 살펴 보았습니다.위키 백과의 RTTI 정의에 대해
내가 (
ABC * abc_pointer = 새로운 xyz이이 부분에 대해 혼란 스러워요) abc_pointer는 얻을 것이다 identified.I가
xyz_pointer을 비교의 사용이 무엇을 의미하는 것이 분명 wouldnt가 XYZ 객체를 가리 키도록하게하는 경우
! = NULL
나중에 그리고 일반적으로 RTTI? 내가 여기서 뭔가를 놓치고 있니? 나중에
xyz_pointer = dynamic_cast<xyz*>(abc_pointer);
는
xyz
로 다시 캐스팅 : 그들이 할 때
그보다 훨씬 일반적인 것입니다. 'abc'는 많은 다른 클래스의 기본 클래스가 될 수 있으며, 런타임 중에 (abc_pointer가 abc_pointer 클래스의 객체를 가리킬 수 있기 때문에) 어떤 타입의 객체를 가리키는 지 반드시 알지 못할 수도 있습니다. RTTI는 'dynamic_cast'(실제로는 RTTI 임)을 사용하여 가리키는 객체의 실제 유형을 결정합니다. –
birryree