Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
unsafe Słowa kluczowego oznacza niebezpieczne kontekstu, która jest wymagana dla każdego działania związanego z wskaźniki.Aby uzyskać więcej informacji, zobacz Niebezpieczny kod i wskaźniki (Przewodnik programowania w języku C#).
Można użyć unsafe modyfikator w deklaracji typu lub członka.Cały zakres tekstowy typu lub członka jest uważana za niebezpieczne kontekstu.Na przykład następujące to metody zadeklarowane z unsafe modyfikator:
unsafe static void FastCopy(byte[] src, byte[] dst, int count)
{
// Unsafe context: can use pointers here.
}
Zakres niebezpieczne kontekście rozciąga się od listy parametrów na koniec metoda, tak wskaźniki można również na liście parametrów:
unsafe static void FastCopy ( byte* ps, byte* pd, int count ) {...}
Aby umożliwić stosowanie niebezpieczny kod wewnątrz bloku ten umożliwia także blok niebezpieczne.Na przykład:
unsafe
{
// Unsafe context: can use pointers here.
}
Aby skompilować niebezpieczny kod, należy określić / unsafe opcję kompilatora.Niebezpieczny kod nie jest możliwe do zweryfikowania przez aparatu plików wykonywalnych języka wspólnego.
Przykład
// 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
Specyfikacja języka C#
Aby uzyskać więcej informacji, zobacz Specyfikacja języka C#. Specyfikacja języka jest ostatecznym źródłem informacji o składni i użyciu języka C#.
Zobacz też
Informacje
fixed — Instrukcja (odwołanie w C#)
Niebezpieczny kod i wskaźniki (Przewodnik programowania w języku C#)
Bufory o ustalonym rozmiarze (Przewodnik programowania w języku C#)
Koncepcje
Przewodnik programowania w języku C#