System 名前空間


.NET Framework クラス ライブラリ
IntPtr 構造体

更新 : 2007 年 11 月

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

名前空間 :  System
アセンブリ :  mscorlib (mscorlib.dll 内)
構文

Visual Basic (宣言)
<SerializableAttribute> _
<ComVisibleAttribute(True)> _
Public Structure IntPtr _
    Implements ISerializable
Visual Basic (使用法)
Dim instance As IntPtr
C#
[SerializableAttribute]
[ComVisibleAttribute(true)]
public struct IntPtr : ISerializable
Visual C++
[SerializableAttribute]
[ComVisibleAttribute(true)]
public value class IntPtr : ISerializable
J#
/** @attribute SerializableAttribute */ 
/** @attribute ComVisibleAttribute(true) */
public final class IntPtr extends ValueType implements ISerializable
JScript
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
参照

参照

タグ :


Page view tracker