Compiler Warning (level 1) CS0420

"Bezeichner": Ein Verweis auf ein flüchtiges Feld wird nicht als flüchtig behandelt.

Ein flüchtiges Feld darf normalerweise nicht mit dem ref-Parameter oder dem out-Parameter übergeben werden, da es innerhalb des Bereichs der Funktion nicht als flüchtig behandelt wird. Es gibt einige Ausnahmen von dieser Regel, z. B. beim Aufrufen einer gesperrten API. Wie bei jeder Warnung, können Sie auch hier #pragma warning verwenden, um diese Warnung für die seltenen Fälle zu deaktivieren, in denen Sie ein flüchtiges Feld absichtlich als Verweisparameter verwenden.

Im folgenden Beispiel wird CS0420 generiert:

// CS0420.cs  
// compile with: /W:1  
using System;  

class TestClass  
{  
   private volatile int i;  

   public void TestVolatile(ref int ii)  
   {  
   }  

   public static void Main()  
   {  
      TestClass x = new TestClass();  
      x.TestVolatile(ref x.i);   // CS0420   
   }  
}