C# LanguageCode non sécurisé dans .NET


Remarques

  • Pour pouvoir utiliser le mot clé unsafe dans un projet .Net, vous devez cocher "Autoriser le code non sécurisé" dans Propriétés du projet => Créer
  • L'utilisation d'un code non sécurisé peut améliorer les performances, mais au détriment de la sécurité du code (d'où le terme unsafe ).

Par exemple, lorsque vous utilisez une boucle for, un tableau comme celui-ci:

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

.NET Framework garantit que vous ne dépassez pas les limites du tableau, en lançant une IndexOutOfRangeException si l'index dépasse les limites.

Toutefois, si vous utilisez un code non sécurisé, vous pouvez dépasser les limites du tableau comme suit:

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

Code non sécurisé dans .NET Exemples Liés