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 .
Возвращаемое значение
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 .
Возвращаемое значение
nativeint
Смещение в байтах для fieldName параметра в указанном классе, объявленном вызовом платформы.
Комментарии
OffsetOf<T>(String) предоставляет смещение с точки зрения неуправляемого макета структуры, которое не обязательно соответствует смещеению макета управляемой структуры. Маршалинг структуры может преобразовать макет и изменить смещение. Параметр T универсального типа может быть типом значения или форматированным ссылочным типом (с последовательным или явным макетом). Размер всего макета можно получить с помощью SizeOf<T>(T) метода.
Замечание
OffsetOf может предоставлять частные поля.