次の方法で共有


IntPtr 構造体

ポインタまたはハンドルを表すときに使用されるプラットフォーム固有の型。

この型のすべてのメンバの一覧については、IntPtr メンバ を参照してください。

System.Object
   System.ValueType
      System.IntPtr

<Serializable>
Public Structure IntPtr   Implements ISerializable
[C#]
[Serializable]
public struct IntPtr : ISerializable
[C++]
[Serializable]
public __value struct IntPtr : public ISerializable

[JScript] JScript では、.NET Framework の構造体を利用することができます。ただし、独自に定義することはできません。

スレッドセーフ

この型は、マルチスレッド操作に対して安全です。

解説

IntPtr 型は、サイズがプラットフォーム固有の整数になるよう考慮されています。つまり、この型のインスタンスが 32 ビットのハードウェアおよびオペレーティング システムでは 32 ビットになり、64 ビットのハードウェアおよびオペレーティング システムでは 64 ビットになります。

IntPtr 型は、ポインタをサポートする言語で使用できますが、ポインタをサポートする言語とサポートしない言語間でデータを参照するための共通手段としても使用できます。

IntPtr オブジェクトを使用すると、ハンドルも保持できます。たとえば、 IntPtr のインスタンスは、 System.IO.FileStream クラスでだけ使用され、ファイル ハンドルを保持します。

IntPtr 型は CLS に準拠していますが、 UIntPtr 型は準拠していません。共通言語ランタイムで使用されるのは、 IntPtr 型だけです。 UIntPtr 型は、主に IntPtr 型とのアーキテクチャのシンメトリを維持する場合に使用します。

この型は、 ISerializable インターフェイスを実装します。

必要条件

名前空間: System

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET

アセンブリ: Mscorlib (Mscorlib.dll 内)

参照

IntPtr メンバ | System 名前空間 | UIntPtr