Compilerfehler C3136
Aktualisiert: November 2007
Fehlermeldung
'Schnittstelle': Eine COM-Schnittstelle kann nur von einer anderen COM-Schnittstelle erben, 'Schnittstelle' ist keine COM-Schnittstelle
'interface' : a COM interface can only inherit from another COM interface, 'interface' is not a COM interface
Eine Schnittstelle, auf die ein interface-Attribut angewendet wurde, erbt von einer Schnittstelle, die keine COM-Schnittstelle ist. Eine COM-Schnittstelle erbt schließlich von IUnknown. Alle Schnittstellen, denen ein Schnittstellenattribut vorausgeht, sind COM-Schnittstellen.
Im folgenden Beispiel wird C3136 generiert:
// C3136.cpp
#include "unknwn.h"
__interface A // C3136
// try the following line instead
// _interface A : IUnknown
{
int a();
};
[object]
__interface B : A
{
int aa();
};