Udostępnij za pośrednictwem


Marshal.OffsetOf Metoda

Definicja

Przeciążenia

OffsetOf(Type, String)
Przestarzałe.

Zwraca przesunięcie pola niezarządzanej formy klasy zarządzanej.

OffsetOf<T>(String)

Zwraca przesunięcie pola niezarządzanej formy określonej klasy zarządzanej.

OffsetOf(Type, String)

Źródło:
Marshal.CoreCLR.cs
Źródło:
Marshal.CoreCLR.cs
Źródło:
Marshal.CoreCLR.cs

Przestroga

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

Zwraca przesunięcie pola niezarządzanej formy klasy zarządzanej.

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

Parametry

t
Type

Typ wartości lub sformatowany typ odwołania określający klasę zarządzaną. Należy zastosować element StructLayoutAttribute do klasy .

fieldName
String

Pole w parametrze t .

Zwraca

IntPtr

nativeint

Przesunięcie w bajtach dla parametru fieldName w określonej klasie zadeklarowanej przez wywołanie platformy.

Atrybuty

Wyjątki

Nie można wyeksportować klasy jako struktury lub pole jest niepubliczne. Począwszy od programu .NET Framework w wersji 2.0, pole może być prywatne.

Parametr t ma wartość null.

Uwagi

OffsetOf zapewnia przesunięcie w zakresie niezarządzanego układu struktury, który nie musi odpowiadać przesuniętości układu struktury zarządzanej. Marshaling struktury może przekształcić układ i zmienić przesunięcie. Parametr t może być typem wartości lub sformatowanym typem odwołania (z sekwencyjnym lub jawnym układem). Rozmiar całego układu można uzyskać przy użyciu Marshal.SizeOf metody . Aby uzyskać dodatkowe informacje, zobacz Domyślne przeprowadzanie marshalingu dla typów wartości.

Uwaga

Począwszy od programu .NET Framework w wersji 2.0, OffsetOf mogą uwidaczniać pola prywatne.

Zobacz też

Dotyczy

OffsetOf<T>(String)

Źródło:
Marshal.cs
Źródło:
Marshal.cs
Źródło:
Marshal.cs

Zwraca przesunięcie pola niezarządzanej formy określonej klasy zarządzanej.

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

Parametry typu

T

Typ wartości zarządzanej lub sformatowany typ odwołania. Należy zastosować StructLayoutAttribute atrybut do klasy .

Parametry

fieldName
String

Nazwa pola w typie T .

Zwraca

IntPtr

nativeint

Przesunięcie w bajtach dla parametru fieldName w określonej klasie zadeklarowanej przez wywołanie platformy.

Uwagi

OffsetOf<T>(String) zapewnia przesunięcie w zakresie niezarządzanego układu struktury, który nie musi odpowiadać przesuniętości układu struktury zarządzanej. Marshaling struktury może przekształcić układ i zmienić przesunięcie. Parametr T typu ogólnego może być typem wartości lub sformatowanym typem odwołania (z sekwencyjnym lub jawnym układem). Rozmiar całego układu można uzyskać przy użyciu SizeOf<T>(T) metody . Aby uzyskać dodatkowe informacje, zobacz Domyślne przeprowadzanie marshalingu dla typów wartości.

Uwaga

Począwszy od programu .NET Framework w wersji 2.0, OffsetOf mogą uwidaczniać pola prywatne.

Zobacz też

Dotyczy