상속 다이어그램은 다음과 같습니다.
Concrete
|
D
/ \
C B
/ \
A A
당신이 당신의 변환을 시도 할 때 Concrete*
에 A*
, 컴파일러는 어떤 인스턴스인지 전혀 모른다 A
당신은 원합니다. 당신은 A
저것 C
파생 또는 A
저것 B
에서 얻다?
해결책은 가상 상속을 사용하여 파생하는 것입니다 B
그리고 C
~에서 A
, 따라서 인스턴스가 하나뿐입니다 A
.
Concrete
|
D
/ \
C B
\ /
A