Partager via


Impossible d'implémenter l'interface '<NomInterface1>', car son implémentation pourrait être en conflit avec l'implémentation d'une autre interface '<NomInterface2>' implémentée pour certains arguments de type

Mise à jour : novembre 2007

Cannot implement interface '<interfacename1>' because its implementation could conflict with the implementation of another implemented interface '<interfacename2>' for some type arguments

Une déclaration de classe contient une instruction Implements qui spécifie deux interfaces ou plus, mais au moins l'une des interfaces est générique et deux des implémentations peuvent entrer en conflit pour certaines valeurs d'arguments de type.

Les instructions suivantes peuvent générer ce message d'erreur.

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 étant construit à l'aide de String, testClass doit implémenter deux versions de testSub avec des signatures identiques. Cela crée une ambiguïté sur la version à accéder.

ID d'erreur : BC32072

Pour corriger cette erreur

  • Modifiez l'argument de type fourni à l'interface générique pour éviter tout conflit.

    - ou -

  • Supprimez de l'instruction Implements l'une des interfaces qui provoquent le conflit d'implémentation.

Voir aussi

Concepts

Implements, mot clé et instruction

Types génériques en Visual Basic

Référence

Class, instruction (Visual Basic)

Interface, instruction (Visual Basic)

Implements, instruction