Číst v angličtině

Sdílet prostřednictvím


Chyba kompilátoru CS0135

"deklarace1" je v konfliktu s deklarací "deklarace2".

Kompilátor neumožňuje skrytí názvů, což obvykle vede k chybám logiky v kódu.

Příklad

Následující ukázka vygeneruje CS0135:

// CS0135.cs  
public class MyClass2  
{  
   public static int i = 0;  
  
   public static void Main()  
   {  
      {  
         int i = 4;  
         i++;  
      }  
      i = 0;   // CS0135  
   }  
}  

Ze specifikace jazyka C#:

Jedná se o chybu pro prostor deklarace místní proměnné a prostor deklarace vnořených místních proměnných, který obsahuje prvky se stejným názvem. Proto v rámci vnořeného prostoru deklarace není možné deklarovat místní proměnnou nebo konstantu se stejným názvem jako místní proměnnou nebo konstantu v uzavřeném prostoru deklarace. Dva prostory deklarací můžou obsahovat prvky se stejným názvem, pokud druhý prostor deklarace neobsahuje.