Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
generisches Typargument für 'arg' darf nicht 'type' sein, es muss ein Werttyp oder Handletyp sein.
Bemerkungen
Das generische Typargument war nicht vom richtigen Typ.
Weitere Informationen finden Sie unter Generics.
Beispiele
Sie können einen generischen Typ nicht mit einem systemeigenen Typ instanziieren. Im folgenden Beispiel wird C3225 generiert.
// C3225.cpp
// compile with: /clr
class A {};
ref class B {};
generic <class T>
ref class C {};
int main() {
C<A>^ c = gcnew C<A>; // C3225
C<B^>^ c2 = gcnew C<B^>; // OK
}
Im folgenden Beispiel wird eine Komponente mit C# erstellt. Beachten Sie, dass die Einschränkung angibt, dass der generische Typ nur mit einem Werttyp instanziiert werden kann.
// C3225_b.cs
// compile with: /target:library
// a C# program
public class MyList<T> where T: struct {}
In diesem Beispiel wird die von C# erstellte Komponente verwendet und gegen die Einschränkung, dass MyList nur mit einem Werttyp außer Nullable instanziiert werden kann, verstößt. Im folgenden Beispiel wird C3225 generiert.
// C3225_c.cpp
// compile with: /clr
#using "C3225_b.dll"
ref class A {};
value class B {};
int main() {
MyList<A> x; // C3225
MyList<B> y; // OK
}