Przeczytaj w języku angielskim

Udostępnij za pośrednictwem


Ostrzeżenie kompilatora (poziom 1) CS0183

Podane wyrażenie jest zawsze podane ('type') typu

Jeśli instrukcja warunkowa zawsze daje w wyniku wartość true, nie potrzebujesz instrukcji warunkowej. To ostrzeżenie występuje, gdy próbujesz ocenić typ przy użyciu operatora is . Jeśli ocena jest typem wartości, sprawdzanie jest niepotrzebne.

Poniższy przykład generuje plik CS0183:

C#
// CS0183.cs  
// compile with: /W:1  
using System;  
public class Test  
{  
   public static void F(Int32 i32, String str)  
   {  
      if (str is Object)          // OK  
         Console.WriteLine( "str is an object" );  
      else  
         Console.WriteLine( "str is not an object" );  
  
      if (i32 is Object)   // CS0183  
         Console.WriteLine( "i32 is an object" );  
      else  
         Console.WriteLine( "i32 is not an object" ); // never reached  
   }  
  
   public static void Main()  
   {  
  
      F(0, "CS0183");  
      F(120, null);
   }  
}