Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Un'istruzione crea un tipo generico che passa un parametro di tipo che non è vincolato per soddisfare un vincolo New .
Il vincolo New indica che l'argomento di tipo fornito a tale parametro di tipo deve esporre un costruttore senza parametri accessibile al codice che crea oggetti in base ad esso. Tutti i tipi valore hanno costruttori senza parametri, ma non tutti i tipi riferimento li hanno. Di conseguenza il vincolo Structure soddisfa il vincolo New , ma il vincolo Class o un nome della classe o interfaccia, non lo soddisfa.
Le istruzioni seguenti possono generare questo errore.
Public Class c1(Of t As New)
End Class
Public Class c2(Of u)
Public testObject As New c1(Of u)
End Class
Quando la classe c2 crea un oggetto in base a c1, il parametro di tipo u non soddisfa il vincolo di New sul parametro di tipo t.
ID errore: BC32084
Per correggere l'errore
Se il parametro di tipo che deve essere passato al tipo generico può soddisfare il vincolo
StructureoNew, aggiungere il vincolo appropriato alla relativa definizione.Public Class c2(Of u As Structure)Se il parametro di tipo non riesce a soddisfare il vincolo
StructureoNew, non passarlo al tipo generico. È necessario passare qualcos'altro come argomento di tipo.