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.
Aggiornamento: novembre 2007
Member '<interfacename>.<procedurename>' that matches this signature cannot be implemented because the interface '<interfacename>' contains multiple members with this same name and signature: <signaturelist>
Una routine o proprietà tenta di implementare una routine o proprietà definita in un'interfaccia implementata, ma il compilatore trova più versioni della routine o della proprietà d'interfaccia con lo stesso nome e la stessa firma.
Questo errore può verificarsi con i tipi generici costruiti, come illustrato nei seguenti scheletri di dichiarazioni.
Public Interface baseInterface(Of t)
Sub doSomething(ByVal inputValue As String)
Sub doSomething(ByVal inputValue As t)
End Class
Public Class implementingClass
Implements baseInterface(Of String)
Sub doSomething(ByVal inputValue As String) _
Implements baseInterface(Of String).doSomething
End Sub
End Class
Poiché implementingClass implementa baseInterface fornendo String al relativo parametro di tipo t, le due versioni di doSomething contenute in baseInterface utilizzano le stesse firme con implementingClass. Di conseguenza, il compilatore non è in grado di definire la versione da implementare.
ID errore: BC30937
Per correggere l'errore
Modficare l'argomento o gli argomenti di tipo forniti alla classe base per evitare che le routine o le proprietà del membro utilizzino una o più firme uguali.
-oppure-
Non implementare questa classe base. Non è possibile implementarla con l'insieme degli argomenti di tipo in uso perché altrimenti sarebbe necessario implementare ciascuno dei relativi membri.
Vedere anche
Concetti
Parola chiave Implements e istruzione Implements