更新 : 2007 年 11 月
ポインタまたはハンドルを表すときに使用されるプラットフォーム固有の型。
名前空間 :
System
アセンブリ :
mscorlib (mscorlib.dll 内)
<SerializableAttribute> _
<ComVisibleAttribute(True)> _
Public Structure IntPtr _
Implements ISerializable
[SerializableAttribute]
[ComVisibleAttribute(true)]
public struct IntPtr : ISerializable
[SerializableAttribute]
[ComVisibleAttribute(true)]
public value class IntPtr : ISerializable
/** @attribute SerializableAttribute */
/** @attribute ComVisibleAttribute(true) */
public final class IntPtr extends ValueType implements ISerializable
JScript では、構造体を使用できますが、新規に宣言することはできません。
IntPtr 型は、サイズがプラットフォーム固有の整数になるよう考慮されています。つまり、この型のインスタンスが 32 ビットのハードウェアおよびオペレーティング システムでは 32 ビットになり、64 ビットのハードウェアおよびオペレーティング システムでは 64 ビットになります。
IntPtr 型は、ポインタをサポートする言語で使用できますが、ポインタをサポートする言語とサポートしない言語間でデータを参照するための共通手段としても使用できます。
IntPtr オブジェクトを使用すると、ハンドルも保持できます。たとえば、IntPtr のインスタンスは、System.IO..::.FileStream クラスでだけ使用され、ファイル ハンドルを保持します。
IntPtr 型は CLS に準拠していますが、UIntPtr 型は準拠していません。共通言語ランタイムで使用されるのは、IntPtr 型だけです。UIntPtr 型は、主に IntPtr 型とのアーキテクチャのシンメトリを維持する場合に使用します。
この型は、ISerializable インターフェイスを実装します。
この型は、スレッド セーフです。
Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360
.NET Framework および .NET Compact Framework では、各プラットフォームのすべてのバージョンはサポートしていません。サポートされているバージョンについては、「.NET Framework システム要件」を参照してください。
.NET Framework
サポート対象 : 3.5、3.0、2.0、1.1、1.0
.NET Compact Framework
サポート対象 : 3.5、2.0、1.0
XNA Framework
サポート対象 : 2.0、1.0
参照