Marshal.OffsetOf メソッド
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
OffsetOf(Type, String) |
古い.
マネージド クラスのアンマネージド フォームのフィールド オフセットを返します。 |
OffsetOf<T>(String) |
指定されたマネージド クラスのアンマネージド フォームのフィールド オフセットを返します。 |
注意事項
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
パラメーターのバイト単位のオフセット。
- 属性
例外
クラスを構造体としてエクスポートできません。またはフィールドが非パブリックです。 .NET Framework Version 2.0 から開始すると、フィールドはプライベートになる場合があります。
t
パラメーターが null
です。
注釈
OffsetOf は、アンマネージド構造体レイアウトの観点からオフセットを提供します。これは、必ずしもマネージド構造体レイアウトのオフセットに対応するとは限りません。 構造体をマーシャリングすると、レイアウトを変換し、オフセットを変更できます。 パラメーターには t
、値型または書式設定された参照型 (シーケンシャルまたは明示的なレイアウト) を指定できます。 メソッドを使用して、レイアウト全体のサイズを Marshal.SizeOf 取得できます。 詳細については、「 値型の既定のマーシャリング」を参照してください。
注意
.NET Framework バージョン 2.0 以降では、 OffsetOf プライベート フィールドが公開される場合があります。
こちらもご覧ください
適用対象
.NET 9 およびその他のバージョン
製品 | バージョン (廃止) |
---|---|
.NET | Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9 (Core 1.0) |
.NET Framework | 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 1.1, 2.0, 2.1 (1.2, 1.3, 1.4, 1.5, 1.6) |
UWP | (10.0) |
- ソース:
- 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) 取得できます。 詳細については、「 値型の既定のマーシャリング」を参照してください。
注意
.NET Framework バージョン 2.0 以降では、 OffsetOf プライベート フィールドが公開される場合があります。
こちらもご覧ください
適用対象
.NET 9 およびその他のバージョン
製品 | バージョン |
---|---|
.NET | Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9 |
.NET Framework | 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1 |
UWP | 10.0 |
.NET に関するフィードバック
.NET はオープンソース プロジェクトです。 フィードバックを提供するにはリンクを選択します。