Partager via


Erreur du compilateur CS0545

Mise à jour : novembre 2007

Message d'erreur

'fonction' : substitution impossible, car 'propriété' ne possède pas d'accesseur get substituable
'function' : cannot override because 'property' does not have an overridable get accessor

Une tentative a été faite afin de définir une substitution pour un accesseur de propriété lorsque la classe de base n'a pas une telle définition à substituer. Vous pouvez corriger cette erreur en :

  • ajoutant un accesseur set à la classe de base ;

  • supprimant l'accesseur set de la classe dérivée ;

  • masquant la propriété de la classe de base par ajout du mot clé new à la propriété d'une classe dérivée ;

  • rendant la propriété de la classe de base virtual.

Pour plus d'informations, consultez Utilisation de propriétés (Guide de programmation C#).

Exemple

L'exemple suivant génère l'erreur CS0545.

// CS0545.cs
// compile with: /target:library
// CS0545
public class a
{
   public virtual int i
   {
      set {}

      // Uncomment the following line to resolve.
      // get { return 0; }
   }
}

public class b : a
{
   public override int i
   {
      get { return 0; }
      set {}   // OK
   }
}