." u některých argumentů typu. - Visual Basic | Microsoft Learn"
data-list-item-url="/dotnet/visual-basic/misc/bc32125"
data-list-source="module"
data-resource-type=""
data-bi-name="add-to-list"
aria-describedby="popover-content"
aria-expanded="false"
>
Uložit
Nelze implementovat< název_rozhraní1>.<membername>", protože jeho implementace by mohla být v konfliktu s implementací "<interfacename2>".<>název_člena pro některé argumenty typu
Třída implementuje více než jedno obecné rozhraní, z nichž jeden dědí z jiného a dvě implementace člena rozhraní mohou kolidovat pro určité hodnoty argumentů typu.
Tato chyba může vygenerovat následující příkazy.
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
Vzhledem k tomu iFace2
, že dědí z iFace1
použití vlastního parametru typu (u
), testClass
implementuje dvě verze iFace1.testSub
s identickými podpisy, pokud byl stejný argument typu předán y
do a z
. Výsledkem by byla nejednoznačnost, ke které verzi se má přistupovat.
ID chyby: BC32125
Změňte strukturu dědičnosti rozhraní tak, aby
iFace1
nebylo možné implementovat se dvěma různými argumenty typu.nebo
Odeberte z
Implements
příkazu jedno z rozhraní, které vede ke konfliktu implementace.