Прочитать на английском

Поделиться через


Предупреждение компилятора (уровень 1) CS0183

Указанное выражение всегда имеет указанный тип ("тип")

Если условное выражение всегда равно true, вам не нужен условный оператор. Это предупреждение возникает, когда вы пытаетесь проверить тип с помощью оператора is . Если вычисление является типом значения, такая проверка не требуется.

При компиляции следующего примера будет выдано предупреждение CS0183:

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