Freigeben über


Die Class-Einschränkung und eine Einschränkung für einen spezifischen Klassentyp können nicht kombiniert werden

Aktualisiert: November 2007

'Class' constraint and a specific class type constraint cannot be combined

Eine Einschränkungsliste enthält sowohl die Class (Visual Basic)-Einschränkung als auch den Namen einer definierten Klasse.

Eine Einschränkungsliste erzwingt Anforderungen an das Typargument, das an den Typparameter übergeben wird. Sie können die folgenden Anforderungen in beliebiger Kombination angeben:

  • Das Typargument muss mindestens eine Schnittstelle implementieren.

  • Das Typargument darf von höchstens einer Klasse erben.

  • Das Typargument muss einen parameterlosen Konstruktor verfügbar machen, auf den der erstellende Code zugreifen kann (fügen Sie die New-Einschränkung ein).

Wenn Sie der Einschränkungsliste keine spezielle Klasse oder Schnittstelle hinzufügen, können Sie eine allgemeinere Anforderung festlegen, indem Sie eine der folgenden Bedingungen angeben:

  • Das Typargument muss ein Werttyp sein (fügen Sie die Structure-Einschränkung hinzu).

  • Das Typargument muss ein Verweistyp sein (fügen Sie die Class-Einschränkung hinzu).

Sie können nicht sowohl Structure als auch Class für den gleichen Typparameter angeben, und Sie können jedes Schlüsselwort nur einmal angeben.

Fehler-ID: BC32107

So beheben Sie diesen Fehler

  • Wenn Sie einen beliebigen Verweistyp als Typargument zulassen möchten, entfernen Sie den Klassennamen aus der Einschränkungsliste.

  • Wenn das Typargument vom angegebenen Klassennamen erben soll, entfernen Sie das Class-Schlüsselwort aus der Einschränkungsliste.

Siehe auch

Konzepte

Generische Typen in Visual Basic

Wert- und Verweistypen