Unsafe Unsafe Unsafe Unsafe Class

Определение

Содержит универсальные низкоуровневые функции для работы с указателями.Contains generic, low-level functionality for manipulating pointers.

public ref class Unsafe abstract sealed
public static class Unsafe
type Unsafe = class
Public Class Unsafe
Наследование
UnsafeUnsafeUnsafeUnsafe

Методы

Add<T>(Void*, Int32) Add<T>(Void*, Int32) Add<T>(Void*, Int32) Add<T>(Void*, Int32)

Добавляет смещение элемента для данного пустого указателя.Adds an element offset to the given void pointer.

Add<T>(T, Int32) Add<T>(T, Int32) Add<T>(T, Int32) Add<T>(T, Int32)

Добавляет смещение элемента для данной ссылки.Adds an element offset to the given reference.

Add<T>(T, IntPtr) Add<T>(T, IntPtr) Add<T>(T, IntPtr) Add<T>(T, IntPtr)

Добавляет смещение элемента для данной ссылки.Adds an element offset to the given reference.

AddByteOffset<T>(T, IntPtr) AddByteOffset<T>(T, IntPtr) AddByteOffset<T>(T, IntPtr) AddByteOffset<T>(T, IntPtr)

Добавляет смещение в байтах для данной ссылки.Adds a byte offset to the given reference.

AreSame<T>(T, T) AreSame<T>(T, T) AreSame<T>(T, T) AreSame<T>(T, T)

Определяет, указывают ли данные ссылки на одно и то же расположение.Determines whether the specified references point to the same location.

As<T>(Object) As<T>(Object) As<T>(Object) As<T>(Object)

Приводит заданный объект к указанному типу.Casts the given object to the specified type.

As<TFrom,TTo>(TFrom) As<TFrom,TTo>(TFrom) As<TFrom,TTo>(TFrom) As<TFrom,TTo>(TFrom)

Повторно интерпретирует данную ссылку как ссылку на значение типа TTo.Reinterprets the given reference as a reference to a value of type TTo.

AsPointer<T>(T) AsPointer<T>(T) AsPointer<T>(T) AsPointer<T>(T)

Возвращает указатель на параметр, переданный по ссылке.Returns a pointer to the given by-ref parameter.

AsRef<T>(T) AsRef<T>(T) AsRef<T>(T) AsRef<T>(T)

Повторно интерпретирует ссылку, доступную только для чтения, как ссылку.Reinterprets the given read-only reference as a reference.

AsRef<T>(Void*) AsRef<T>(Void*) AsRef<T>(Void*) AsRef<T>(Void*)

Повторно интерпретирует данное расположение как ссылку на значение типа T.Reinterprets the given location as a reference to a value of type T.

ByteOffset<T>(T, T) ByteOffset<T>(T, T) ByteOffset<T>(T, T) ByteOffset<T>(T, T)

Определяет смещение в байтах от источника до целевого объекта из данной ссылки.Determines the byte offset from origin to target from the given references.

Copy<T>(Void*, T) Copy<T>(Void*, T) Copy<T>(Void*, T) Copy<T>(Void*, T)

Копирует значение типа T в заданное расположение.Copies a value of type T to the given location.

Copy<T>(T, Void*) Copy<T>(T, Void*) Copy<T>(T, Void*) Copy<T>(T, Void*)

Копирует значение типа T в заданное расположение.Copies a value of type T to the given location.

CopyBlock(Byte, Byte, UInt32) CopyBlock(Byte, Byte, UInt32) CopyBlock(Byte, Byte, UInt32) CopyBlock(Byte, Byte, UInt32)

Копирует байты из адреса источника в адрес назначения.Copies bytes from the source address to the destination address.

CopyBlock(Void*, Void*, UInt32) CopyBlock(Void*, Void*, UInt32) CopyBlock(Void*, Void*, UInt32) CopyBlock(Void*, Void*, UInt32)

Копирует байты из адреса источника в адрес назначения.Copies bytes from the source address to the destination address.

CopyBlockUnaligned(Byte, Byte, UInt32) CopyBlockUnaligned(Byte, Byte, UInt32) CopyBlockUnaligned(Byte, Byte, UInt32) CopyBlockUnaligned(Byte, Byte, UInt32)

Копирует байты из адреса источника в адрес назначения без учета архитектурно зависимого выравнивания адресов.Copies bytes from the source address to the destination address without assuming architecture dependent alignment of the addresses.

CopyBlockUnaligned(Void*, Void*, UInt32) CopyBlockUnaligned(Void*, Void*, UInt32) CopyBlockUnaligned(Void*, Void*, UInt32) CopyBlockUnaligned(Void*, Void*, UInt32)

Копирует байты из адреса источника в адрес назначения без учета архитектурно зависимого выравнивания адресов.Copies bytes from the source address to the destination address without assuming architecture dependent alignment of the addresses.

InitBlock(Void*, Byte, UInt32) InitBlock(Void*, Byte, UInt32) InitBlock(Void*, Byte, UInt32) InitBlock(Void*, Byte, UInt32)

Инициализирует блок памяти в указанном расположении с заданным начальным значением.Initializes a block of memory at the given location with a given initial value.

InitBlock(Byte, Byte, UInt32) InitBlock(Byte, Byte, UInt32) InitBlock(Byte, Byte, UInt32) InitBlock(Byte, Byte, UInt32)

Инициализирует блок памяти в указанном расположении с заданным начальным значением.Initializes a block of memory at the given location with a given initial value.

InitBlockUnaligned(Byte, Byte, UInt32) InitBlockUnaligned(Byte, Byte, UInt32) InitBlockUnaligned(Byte, Byte, UInt32) InitBlockUnaligned(Byte, Byte, UInt32)

Инициализирует блок памяти в указанном расположении с заданным начальным значением без учета архитектурно зависимого выравнивания адреса.Initializes a block of memory at the given location with a given initial value without assuming architecture dependent alignment of the address.

InitBlockUnaligned(Void*, Byte, UInt32) InitBlockUnaligned(Void*, Byte, UInt32) InitBlockUnaligned(Void*, Byte, UInt32) InitBlockUnaligned(Void*, Byte, UInt32)

Инициализирует блок памяти в указанном расположении с заданным начальным значением без учета архитектурно зависимого выравнивания адреса.Initializes a block of memory at the given location with a given initial value without assuming architecture dependent alignment of the address.

IsAddressGreaterThan<T>(T, T) IsAddressGreaterThan<T>(T, T) IsAddressGreaterThan<T>(T, T) IsAddressGreaterThan<T>(T, T)

Возвращает значение, указывающее, действительно ли заданная ссылка больше другой заданной ссылки.Returns a value that indicates whether a specified reference is greater than another specified reference.

IsAddressLessThan<T>(T, T) IsAddressLessThan<T>(T, T) IsAddressLessThan<T>(T, T) IsAddressLessThan<T>(T, T)

Возвращает значение, указывающее, действительно ли заданная ссылка меньше другой заданной ссылки.Returns a value that indicates whether a specified reference is less than another specified reference.

Read<T>(Void*) Read<T>(Void*) Read<T>(Void*) Read<T>(Void*)

Считывает значение типа T из заданного расположения.Reads a value of type T from the given location.

ReadUnaligned<T>(Byte) ReadUnaligned<T>(Byte) ReadUnaligned<T>(Byte) ReadUnaligned<T>(Byte)

Считывает значение типа T из заданного расположения без учета архитектурно зависимого выравнивания адресов.Reads a value of type T from the given location without assuming architecture dependent alignment of the addresses.

ReadUnaligned<T>(Void*) ReadUnaligned<T>(Void*) ReadUnaligned<T>(Void*) ReadUnaligned<T>(Void*)

Считывает значение типа T из заданного расположения без учета архитектурно зависимого выравнивания адресов.Reads a value of type T from the given location without assuming architecture dependent alignment of the addresses.

SizeOf<T>() SizeOf<T>() SizeOf<T>() SizeOf<T>()

Возвращает размер объекта данного параметра типа.Returns the size of an object of the given type parameter.

Subtract<T>(Void*, Int32) Subtract<T>(Void*, Int32) Subtract<T>(Void*, Int32) Subtract<T>(Void*, Int32)

Вычитает смещение элемента из данного пустого указателя.Subtracts an element offset from the given void pointer.

Subtract<T>(T, Int32) Subtract<T>(T, Int32) Subtract<T>(T, Int32) Subtract<T>(T, Int32)

Вычитает смещение элемента из данной ссылки.Subtracts an element offset from the given reference.

Subtract<T>(T, IntPtr) Subtract<T>(T, IntPtr) Subtract<T>(T, IntPtr) Subtract<T>(T, IntPtr)

Вычитает смещение элемента из данной ссылки.Subtracts an element offset from the given reference.

SubtractByteOffset<T>(T, IntPtr) SubtractByteOffset<T>(T, IntPtr) SubtractByteOffset<T>(T, IntPtr) SubtractByteOffset<T>(T, IntPtr)

Вычитает смещение в байтах из данной ссылки.Subtracts a byte offset from the given reference.

Unbox<T>(Object) Unbox<T>(Object) Unbox<T>(Object) Unbox<T>(Object)

Возвращает ссылку mutable ref на упакованное значение.Returns a mutable ref to a boxed value.

Write<T>(Void*, T) Write<T>(Void*, T) Write<T>(Void*, T) Write<T>(Void*, T)

Записывает значение типа T в заданное расположение.Writes a value of type T to the given location.

WriteUnaligned<T>(Byte, T) WriteUnaligned<T>(Byte, T) WriteUnaligned<T>(Byte, T) WriteUnaligned<T>(Byte, T)

Записывает значение типа T в заданное расположение без учета архитектурно зависимого выравнивания адресов.Writes a value of type T to the given location without assuming architecture dependent alignment of the addresses.

WriteUnaligned<T>(Void*, T) WriteUnaligned<T>(Void*, T) WriteUnaligned<T>(Void*, T) WriteUnaligned<T>(Void*, T)

Записывает значение типа T в заданное расположение без учета архитектурно зависимого выравнивания адресов.Writes a value of type T to the given location without assuming architecture dependent alignment of the addresses.

Применяется к