Compiler Error C3808
Visual Studio 2015
The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.
The latest version of this topic can be found at Compiler Error C3808.
type' : a class with the ComImport attribute cannot define member 'member', only abstract or dllimport functions are allowed
A type that derived from ComImportAttribute cannot define member.
The following sample generates C3808.
// C3808.cpp
// compile with: /c /clr:pure user32.lib
using namespace System::Runtime::InteropServices;
[System::Runtime::InteropServices::ComImportAttribute()]
ref struct S1 {
int f() {} // C3808
virtual int g() abstract; // OK
[DllImport("msvcrt.dll")]
int printf(System::String ^, int i); // OK
};
Show: