Error del compilador C3136
"interface": una interfaz COM solo puede heredar de otra interfaz COM; "interface" no es una interfaz COM
Aquellas interfaces a las que se haya aplicado un atributo de interfaz heredan de cualquier interfaz que no sean del tipo COM. En última instancia, las interfaces COM heredan de IUnknown
. Cualquier interfaz precedida por un atributo de interfaz es del tipo COM.
El ejemplo siguiente genera el error C3136:
// C3136.cpp
#include "unknwn.h"
__interface A // C3136
// try the following line instead
// _interface A : IUnknown
{
int a();
};
[object]
__interface B : A
{
int aa();
};