Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Aggiornamento: novembre 2007
Messaggio di errore
Impossibile utilizzare la variabile locale 'name' prima che sia dichiarata. La dichiarazione di variabile locale nasconde il campo 'name'.
Cannot use local variable 'name' before it is declared. The declaration of the local variable hides the field 'name'.
Un identificatore può avere solo uno significato in un blocco specificato. Le variabili locali che hanno lo stesso nome dei campi della classe possono nascondere il campo introducendo un secondo significato per l'identificatore. Il compilatore genera pertanto un errore quando si fa riferimento a un campo della classe in un metodo e si dichiara quindi una variabile locale con lo stesso nome.
Per correggere l'errore
Utilizzare this.num per fare riferimento al campo della classe.
Assegnare alla variabile locale un nome diverso dal campo della classe.
Esempio
Nel codice seguente viene generato l'errore CS0844:
class Test
{
int num;
public void TestMethod()
{
num = 5; // CS0844
int num = 6; }
public static int Main()
{
return 1;
}
}