Partager via


Erreur du compilateur CS1648

Mise à jour : novembre 2007

Message d'erreur

Les membres d'un champ readonly 'identificateur ne peuvent pas être modifiés (sauf s'ils appartiennent à un constructeur ou un initialiseur de variable)
Members of readonly field 'identifier' cannot be modified (except in a constructor or a variable initializer)

Cette erreur se produit lorsque vous tentez de modifier un membre de champ readonly qui ne peut pas être modifié. Pour corriger cette erreur, limitez les affectations aux champs readonly pour le constructeur ou l'initialiseur de variable, ou encore supprimez le mot clé readonly de la déclaration relative au champ.

L'exemple suivant génère l'erreur CS1648 :

// CS1648.cs
public struct Inner
  {
    public int i;
  }

class Outer
{  
  public readonly Inner inner = new Inner();
}

class D
{
   static void Main()
   {
      Outer outer = new Outer();
      outer.inner.i = 1;  // CS1648
   }
}