Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Inbäddad instruktion får inte vara en deklaration eller en etikettsats
En inbäddad instruktion, till exempel -uttrycken efter en if-instruktion , kan varken innehålla deklarationer eller etiketterade instruktioner.
Lös det här felet genom att omsluta den inbäddade instruktionen i klammerparenteser för att skapa en block-instruktion. I C#, till skillnad från C/C++, måste variabeldeklarationer och etiketterade instruktioner finnas i en blockinstruktion för att definiera omfånget korrekt.
Följande exempel genererar CS1023 två gånger:
// 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
}
}
Exempel – korrigerad kod
Åtgärda det här felet genom att använda klammerparenteser för att skapa en blocksats:
// 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
}
}
}