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.
Una classe implementa più di un'interfaccia generica, una delle quali eredita dall'altra, e le due implementazioni di un membro di interfaccia potrebbero essere in conflitto per determinati valori di argomenti di tipo.
Le istruzioni seguenti possono generare questo errore.
Public Interface iFace1(Of t)
Sub testSub()
End Interface
Public Interface iFace2(Of u)
Inherits iFace1(Of u)
End Interface
Public Class testClass(Of y, z)
Implements iFace1(Of y), iFace2(Of z)
Public Sub testSuby() Implements iFace1(Of y).testSub
End Sub
Public Sub testSubz() Implements iFace1(Of z).testSub
End Sub
End Class
Dal momento che iFace2 eredita da iFace1 usando il relativo parametro di tipo (u), testClass implementerebbe due versioni di iFace1.testSub con firme identiche se lo stesso argomento di tipo venisse passato a y e z. In questo modo si produrrebbe un'ambiguità sulla versione a cui accedere.
ID errore: BC32125
Per correggere l'errore
Modificare la struttura di ereditarietà delle interfacce in modo che
iFace1non possa essere implementata con due differenti argomenti di tipo.oppure
Rimuovere dall'istruzione
Implementsuna delle interfacce che producono il conflitto di implementazione.