Freigeben über


Generische Parameter, die als optionale Parametertypen verwendet werden, müssen eine Klassenbeschränkung aufweisen

Aktualisiert: November 2007

Generic parameters used as optional parameter types must be class constrained

Eine Prozedur wurde mit einem optionalen Parameter deklariert, der einen Typparameter verwendet, der nicht als Verweistyp eingeschränkt ist.

Sie müssen immer für jeden optionalen Parameter einen Standardwert angeben. Wenn der Parameter kein Verweistyp ist, muss der optionale Wert Nothing sein. Dies ist für jeden Verweistyp ein gültiger Wert. Wenn der Parameter jedoch ein Werttyp ist, muss dieser Typ ein von Visual Basic vordefinierter elementarer Datentyp sein. Der Grund hierfür ist, dass ein zusammengesetzter Werttyp, z. B. eine benutzerdefinierte Struktur, keinen gültigen Standardwert aufweist.

Wenn Sie als optionalen Parameter einen Typparameter verwenden, müssen Sie sicherstellen, dass er ein Verweistyp ist, um die Möglichkeit eines Werttyps ohne gültigen Standardwert auszuschließen. Darum müssen Sie den Typparameter entweder mit dem Class-Schlüsselwort oder mit dem Namen einer bestimmten Klasse einschränken.

Fehler-ID: BC32124

So beheben Sie diesen Fehler

  • Schränken Sie den Typparameter darauf ein, nur einen Verweistyp zu akzeptieren, oder verwenden Sie ihn nicht als optionalen Parameter.

Siehe auch

Konzepte

Generische Typen in Visual Basic

Optionale Parameter

Wert- und Verweistypen

Referenz

Typenliste

Class (Visual Basic)

Nothing (Visual Basic)

Weitere Ressourcen

Strukturen: Benutzerdefinierte Datentypen