C# LanguageCodice non sicuro in .NET


Osservazioni

  • Per poter utilizzare la parola chiave unsafe in un progetto .Net, è necessario selezionare "Consenti codice non sicuro" in Proprietà progetto => Build
  • L'utilizzo di codice non sicuro può migliorare le prestazioni, tuttavia, è a scapito della sicurezza del codice (quindi il termine unsafe ).

Ad esempio, quando usi un ciclo for un array in questo modo:

for (int i = 0; i < array.Length; i++)
{
    array[i] = 0;
}

.NET Framework garantisce che non si superi i limiti dell'array, lanciando una IndexOutOfRangeException se l'indice supera i limiti.

Tuttavia, se si utilizza un codice non sicuro, è possibile superare i limiti dell'array in questo modo:

unsafe
{
    fixed (int* ptr = array)
    {
        for (int i = 0; i <= array.Length; i++)
        {
            *(ptr+i) = 0;
        }
    }
}

Codice non sicuro in .NET Esempi correlati