Kompilatorfel C2810

"gränssnitt" : ett gränssnitt kan bara ärva från ett annat gränssnitt

Anmärkningar

Ett gränssnitt kan bara ärva från ett annat gränssnitt och får inte ärva från en klass eller struct.

Example

I följande exempel genereras C2810:

// C2810.cpp
#include <unknwn.h>
class CBase1 {
public:
  HRESULT mf1();
  int  m_i;
};

[object, uuid="40719E20-EF37-11D1-978D-0000F805D73B"]
__interface IDerived : public CBase1 {  // C2810
// try the following line instead
// __interface IDerived {
   HRESULT mf2(void *a);
};

struct CBase2 {
   HRESULT mf1(int a, char *b);
   HRESULT mf2();
};