ATL COM
조경민
오후 1:14 2000-05-22
=====================================================

IUnkouwn을 상속받은 IA , IB 가 있다고 할때

이 인터페이스 IA, IB를 구현하는 C라는 클래스가 있다면

IUnkouwn IUnkouwn
    |        |
   IA       IB
     `------'
        |
        C

이러한 클래스 다이어 그램이 되어 버린다.

따라서 C에서 구현하는 QueryInterface에서 IID_UNKOWUN에 대한

코드가

*ppv = (IUnkouwn*)this;

를 하게 되면 컴파일 에러가 난다. 모호한 표현이라는 에러이다.

따라서 IA이나 IB의 IUnkouwn중 하나를 선택해서 보내 주어야 한다.

*ppv = (IUnkouwn*)(IA*)this;
or
*ppv = (IUnkouwn*)(IB*)this;

+ Recent posts