Błąd kompilatora CS0136
Nie można zadeklarować zmiennej lokalnej o nazwie "var" w tym zakresie, ponieważ dałoby to inne znaczenie zmiennej "var", która jest już używana w zakresie "nadrzędny lub bieżący/podrzędny", aby oznaczyć coś innego
Deklaracja zmiennej ukrywa inną deklarację, która w przeciwnym razie byłaby w zakresie. Zmień nazwę zmiennej zadeklarowanej w wierszu, który wygenerował CS0136.
Poniższy przykład generuje CS0136:
// CS0136.cs
namespace MyNamespace
{
public class MyClass
{
public static void Main()
{
int i = 0;
{
char i = 'a'; // CS0136, hides int i
}
i++;
}
}
}
Z poziomu specyfikacji języka C#:
Jest to błąd przestrzeni deklaracji zmiennej lokalnej i zagnieżdżonej przestrzeni deklaracji zmiennej lokalnej zawierającej elementy o tej samej nazwie. W związku z tym w przestrzeni deklaracji zagnieżdżonej nie można zadeklarować zmiennej lokalnej ani stałej o takiej samej nazwie jak zmienna lokalna lub stała w otaczającej przestrzeni deklaracji. Istnieje możliwość, aby dwie spacje deklaracji zawierały elementy o tej samej nazwie, o ile żadna spacja deklaracji nie zawiera drugiej.
Opinia o produkcie .NET
.NET to projekt typu open source. Wybierz link, aby przekazać opinię: