Marshal.OffsetOf Метод

Определение

Перегрузки

Имя Описание
OffsetOf(Type, String)
Устаревшие..

Возвращает смещение поля неуправляемой формы управляемого класса.

OffsetOf<T>(String)

Возвращает смещение поля неуправляемой формы указанного управляемого класса.

OffsetOf(Type, String)

Исходный код:
Marshal.CoreCLR.cs
Исходный код:
Marshal.CoreCLR.cs
Исходный код:
Marshal.CoreCLR.cs
Исходный код:
Marshal.CoreCLR.cs
Исходный код:
Marshal.CoreCLR.cs

Внимание

OffsetOf(Type, string) may be unavailable in future releases. Instead, use OffsetOf<T>(string). For more info, go to http://go.microsoft.com/fwlink/?LinkID=296511

Возвращает смещение поля неуправляемой формы управляемого класса.

public:
 static IntPtr OffsetOf(Type ^ t, System::String ^ fieldName);
[System.Obsolete("OffsetOf(Type, string) may be unavailable in future releases. Instead, use OffsetOf<T>(string). For more info, go to http://go.microsoft.com/fwlink/?LinkID=296511")]
public static IntPtr OffsetOf(Type t, string fieldName);
public static IntPtr OffsetOf(Type t, string fieldName);
[<System.Obsolete("OffsetOf(Type, string) may be unavailable in future releases. Instead, use OffsetOf<T>(string). For more info, go to http://go.microsoft.com/fwlink/?LinkID=296511")>]
static member OffsetOf : Type * string -> nativeint
static member OffsetOf : Type * string -> nativeint
Public Shared Function OffsetOf (t As Type, fieldName As String) As IntPtr

Параметры

t
Type

Тип значения или отформатированный ссылочный тип, указывающий управляемый класс. Необходимо применить к классу StructLayoutAttribute .

fieldName
String

Поле в параметре t .

Возвращаемое значение

IntPtr

nativeint

Смещение в байтах для fieldName параметра в указанном классе, объявленном вызовом платформы.

Атрибуты

Исключения

Класс нельзя экспортировать как структуру или поле не является закрытым. Поле может быть закрытым.

Параметр t имеет значение null.

Комментарии

OffsetOf предоставляет смещение с точки зрения неуправляемого макета структуры, которое не обязательно соответствует смещеению макета управляемой структуры. Маршалинг структуры может преобразовать макет и изменить смещение. Параметр t может быть типом значения или форматированным ссылочным типом (с последовательным или явным макетом). Размер всего макета можно получить с помощью Marshal.SizeOf метода.

Замечание

OffsetOf может предоставлять частные поля.

См. также раздел

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

OffsetOf<T>(String)

Исходный код:
Marshal.cs
Исходный код:
Marshal.cs
Исходный код:
Marshal.cs
Исходный код:
Marshal.cs
Исходный код:
Marshal.cs

Возвращает смещение поля неуправляемой формы указанного управляемого класса.

public:
generic <typename T>
 static IntPtr OffsetOf(System::String ^ fieldName);
public static IntPtr OffsetOf<T>(string fieldName);
static member OffsetOf : string -> nativeint
Public Shared Function OffsetOf(Of T) (fieldName As String) As IntPtr

Параметры типа

T

Тип управляемого значения или отформатированный ссылочный тип. Необходимо применить атрибут к классу StructLayoutAttribute .

Параметры

fieldName
String

Имя поля в типе T .

Возвращаемое значение

IntPtr

nativeint

Смещение в байтах для fieldName параметра в указанном классе, объявленном вызовом платформы.

Комментарии

OffsetOf<T>(String) предоставляет смещение с точки зрения неуправляемого макета структуры, которое не обязательно соответствует смещеению макета управляемой структуры. Маршалинг структуры может преобразовать макет и изменить смещение. Параметр T универсального типа может быть типом значения или форматированным ссылочным типом (с последовательным или явным макетом). Размер всего макета можно получить с помощью SizeOf<T>(T) метода.

Замечание

OffsetOf может предоставлять частные поля.

См. также раздел

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