(0) exportieren Drucken
Alle erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

unsafe (C#-Referenz)

Das unsafe-Schlüsselwort deutet auf einen nicht sicheren Kontext hin, der für alle Zeigeroperationen erforderlich ist. Weitere Informationen finden Sie unter Unsicherer Code und Zeiger (C#-Programmierhandbuch).

Sie können den unsafe-Modifizierer in der Deklaration eines Typs oder Members verwenden. Daraufhin wird der gesamte Text des Typs oder Members als nicht sicherer Kontext betrachtet. Das folgende Beispiel enthält beispielsweise eine Methode, die mit dem unsafe-Modifizierer deklariert wurde:

unsafe static void FastCopy(byte[] src, byte[] dst, int count)
{
    // Unsafe context: can use pointers here.
}

Der Gültigkeitsbereich des nicht sicheren Kontexts reicht von der Parameterliste bis zum Methodenende, sodass auch in der Parameterliste Zeiger verwendet werden können:

unsafe static void FastCopy ( byte* ps, byte* pd, int count ) {...}

Sie können auch einen nicht sicheren Block verwenden, um die Verwendung unsicheren Codes innerhalb dieses Blocks zu ermöglichen. Zum Beispiel:

unsafe
{
    // Unsafe context: can use pointers here.
}

Zum Kompilieren von unsicherem Code muss die /unsafe-Compileroption angegeben werden. Unsicherer Code kann nicht durch die Common Language Runtime überprüft werden.


    // compile with: /unsafe

    class UnsafeTest
    {
       // Unsafe method: takes pointer to int:
       unsafe static void SquarePtrParam(int* p)
       {
          *p *= *p;
       }

       unsafe static void Main()
       {
          int i = 5;
          // Unsafe method: uses address-of operator (&):
          SquarePtrParam(&i);
          Console.WriteLine(i);
       }
    }
    // Output: 25



Weitere Informationen finden Sie in der C#-Sprachspezifikation. Die Sprachspezifikation ist die verbindliche Quelle für die Syntax und Verwendung von C#.

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft