Partager via


Erreur du compilateur CS0199

Mise à jour : novembre 2007

Message d'erreur

Les champs d'un champ readonly statique 'nom' ne peuvent pas être passés en ref ou out (sauf s'ils appartiennent à un constructeur statique)
Fields of static readonly field 'name' cannot be passed ref or out (except in a static constructor)

Une variable readonly doit avoir la même utilisation static que le constructeur dans lequel vous souhaitez le passer comme paramètre ref ou out. Pour plus d'informations, consultez Passage de paramètres (Guide de programmation C#).

Exemple

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

// CS0199.cs
class MyClass
{
    public static readonly int TestInt = 6;

    static void TestMethod(ref int testInt)
    {
        testInt = 0;
    }

    MyClass()
    {
        TestMethod(ref TestInt);   // CS0199, TestInt is static
    }

    public static void Main()
    {
    }
}