Partager via


Impossible d'hériter de l'interface '<NomInterface1>', car elle pourrait être identique à l'interface '<NomInterface2>' pour certains arguments de type

Mise à jour : novembre 2007

Cannot inherit interface '<interfacename1>' because it could be identical to interface '<interfacename2>' for some type arguments

Une interface générique hérite plusieurs fois d'une autre interface générique, et deux des héritages pourraient être en conflit pour certaines valeurs d'arguments de type.

Les instructions suivantes peuvent générer cette erreur.

Public Interface interfaceA(Of u)

End Interface

Public Interface derivedInterface(Of t1, t2)

Inherits interfaceA(Of t1), interfaceA(Of t2)

End Interface

Si l'derivedInterface est construite ou implémentée en fournissant le même type à t1 et t2, elle doit hériter de deux versions de l'interfaceA avec des arguments de type identiques. Cela produirait une ambiguïté à propos de la version à laquelle accéder.

ID d'erreur : BC32120

Pour corriger cette erreur

  • Modifiez l'un des arguments de type fournis à l'interface dérivée afin qu'il n'y ait aucun conflit.

    - ou -

  • Supprimez de l'instruction Inherits l'une des interfaces qui provoquent l'héritage potentiel ou le conflit d'implémentation.

Voir aussi

Concepts

Vue d'ensemble des interfaces

Éléments fondamentaux de l'héritage

Types génériques en Visual Basic

Référence

Interface, instruction (Visual Basic)

Inherits, instruction