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 ottenere l'indirizzo di una variabile locale di sola lettura.
Cannot take the address of a read-only local variable
Nel linguaggio C# esistono tre scenari che generano variabili locali di sola lettura: foreach, using e fixed. In ciascuno di questi casi non è consentito eseguire operazioni di scrittura nella variabile locale di sola lettura, né ottenere l'indirizzo di quest'ultima. Questo errore si verifica quando il compilatore rileva un tentativo di ottenere l'indirizzo di una variabile locale di sola lettura.
Esempio
Quando viene effettuato il tentativo di ottenere l'indirizzo di una variabile locale di sola lettura in un ciclo foreach e in un blocco di istruzioni fixed, il seguente codice di esempio genera l'errore CS0459.
// CS0459.cs
// compile with: /unsafe
class A
{
public unsafe void M1()
{
int[] ints = new int[] { 1, 2, 3 };
foreach (int i in ints)
{
int *j = &i; // CS0459
}
fixed (int *i = &_i)
{
int **j = &i; // CS0459
}
}
private int _i = 0;
}