Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Ingebedde instructie kan geen declaratie of gelabelde instructie zijn
Een ingesloten instructie, zoals de instructies na een if-instructie , kan geen declaraties of gelabelde instructies bevatten.
U kunt deze fout oplossen door de ingesloten instructie tussen accolades te verpakken om een blokinstructie te maken. In C# moeten variabeledeclaraties en gelabelde instructies, in tegenstelling tot C/C++, worden opgenomen in een blokinstructie om hun bereik correct te definiƫren.
In het volgende voorbeeld wordt CS1023 tweemaal gegenereerd:
// CS1023.cs
public class a
{
public static void Main()
{
if (1)
int i; // CS1023, declaration is not valid here
if (1)
xx : i++; // CS1023, labeled statement is not valid here
}
}
Voorbeeld: gecorrigeerde code
Als u deze fout wilt oplossen, gebruikt u accolades om een codeblok te maken.
// CS1023 - Fixed.cs
public class a
{
public static void Main()
{
if (1)
{
int i; // Fixed: declaration is now in a block statement
}
int j = 0;
if (1)
{
xx : j++; // Fixed: labeled statement is now in a block statement
}
}
}