Compilerwarnung (Stufe 1) CS0420Compiler Warning (level 1) CS0420

"bezeichner": ein Verweis auf ein temporäres Feld wird nicht als temporär behandelt'identifier': a reference to a volatile field will not be treated as volatile

Ein temporäres Feld sollte normalerweise nicht mit einem ref- oder out-Parameter übergeben werden, da es im Geltungsbereich der Funktion nicht als temporär behandelt wird.A volatile field should not normally be passed using a ref or out parameter, since it will not be treated as volatile within the scope of the function. Es gibt Ausnahmen, wie z.B. beim Aufrufen einer Interlocked-API.There are exceptions to this, such as when calling an interlocked API. Genauso wie mit allen anderen Warnungen können Sie auch hier die #pragma-Warnung verwenden, um diese Warnung in den seltenen Fällen zu deaktivieren, in denen Sie absichtlich ein temporäres Feld als Verweisparameter verwenden.As with any warning, you may use the #pragma warning to disable this warning in those rare cases where you are intentionally using a volatile field as a reference parameter.

Im folgenden Beispiel wird CS0420 generiert:The following sample generates CS0420:

// 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   
   }  
}