We recommend using Visual Studio 2017
This documentation is archived and is not being maintained.

Compiler Warning C4687

'class': a sealed abstract class cannot implement an interface 'interface'

A sealed, abstract type is typically only useful to hold static member functions.

For more information, see abstract (Visual C++)and sealed.

C4687 is issued as an error by default. You can suppress C4687 with the warning pragma. If you are certain that you want to implement an interface in a sealed, abstract type, you can suppress C4687.

The following sample generates C4687.

// C4687.cpp
// compile with: /clr /c
interface class A {};

ref struct B sealed abstract : A {};   // C4687
ref struct C sealed : A {};   // OK
ref struct D abstract : A {};   // OK