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
'dichiarazione1' è in conflitto con la dichiarazione 'dichiarazione2'.
'declaration1' conflicts with the declaration 'declaration2'
Il compilatore non consente che i nomi vengano nascosti, poiché generalmente i nomi nascosti causano errori logici nel codice.
Esempio
Il seguente codice di esempio genera l'errore CS0135:
// CS0135.cs
public class MyClass2
{
public static int i = 0;
public static void Main()
{
{
int i = 4;
i++;
}
i = 0; // CS0135
}
}
Da Specifiche del linguaggio C#, sezione 7.5.2.1:
Per ogni occorrenza di un identificatore specificato come nome semplice in un'espressione o un dichiaratore, all'interno dello spazio della dichiarazione di variabile locale (§CNDJ6nn5us4RjIIAqgBLqQsCAAAACAAAAA4AAABfAFIAZQBmADQANgAxADYAMgAyADEAMwA4AAAA REF _Ref461622138 \r \h 3.3) che include immediatamente quell'occorrenza, ogni altra occorrenza dello stesso identificatore come nome semplice in un'espressione o dichiaratore deve fare riferimento alla stessa entità. Questa regola assicura che il significato di un nome sia sempre lo stesso all'interno di un blocco specificato, un blocco switch, un'istruzione for, foreach o using o una funzione anonima.