Ler em inglês

Compartilhar via


Aviso do compilador (nível 1) CS0183

A expressão fornecida é sempre do tipo fornecido ('type')

Se uma instrução condicional sempre for avaliada como true, você não precisará de uma instrução condicional. Esse aviso ocorre quando você tenta avaliar um tipo usando o operador is. Se a avaliação for um tipo de valor, a verificação será desnecessária.

O exemplo a seguir gera 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);
   }  
}