Udostępnij za pośrednictwem


Ostrzeżenie kompilatora C4687

"class": zapieczętowana klasa abstrakcyjna nie może zaimplementować interfejsu "interface"

Uwagi

Zapieczętowany, abstrakcyjny typ jest zwykle przydatny tylko do przechowywania statycznych funkcji składowych.

Aby uzyskać więcej informacji, zobacz abstrakcyjne i zapieczętowane.

C4687 jest domyślnie wystawiany jako błąd. Można pominąć C4687 z pragma ostrzeżenia . Jeśli masz pewność, że chcesz zaimplementować interfejs w zapieczętowanym, abstrakcyjnym typie, możesz pominąć C4687.

Przykład

Poniższy przykład generuje kod 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