클래스 선언에 두 개 이상의 인터페이스를 지정하는 Implements 문이 포함되어 있지만 하나 이상의 인터페이스가 제네릭이며 둘 이상의 구현이 형식 인수의 특정 값에 대해 충돌할 수 있습니다.
다음 문은 이 오류를 생성할 수 있습니다.
Public Interface iFace1
Sub testSub(ByVal arg As String)
End Interface
Public Interface iFace2(Of t)
Sub testSub(ByVal arg As t)
End Interface
Public Class testClass
Implements iFace1, iFace2(Of String)
End Class
iFace2 가 String를 사용하여 생성되므로 testClass 에서 서명이 동일한 두 버전의 testSub 를 구현해야 합니다. 이렇게 하면 액세스할 버전이 모호해집니다.
오류 ID: BC32072
이 오류를 해결하려면
충돌이 발생하지 않도록 제네릭 인터페이스에 제공된 형식 인수를 변경합니다.
또는
구현 충돌을 일으키는 인터페이스 중 하나를
Implements문에서 제거합니다.
참고 항목
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
.NET