代码改变世界

IntPtr类型

2010-12-02 11:37  calm_水手  阅读(1218)  评论(0编辑  收藏  举报

    IntPtr结构用于表示指针或句柄的平台特定类型。

    [SerializableAttribute]

    [ComVisibleAttribute(true)]

    public struct IntPtr : ISerializable

    IntPtr 类型被设计成整数,其大小适用于特定平台。即是说,此类型的实例在 32 位硬件和操作系统中将是 32 位,在 64 位硬件和操作系统上将是 64 位???

    IntPtr 类型可以由支持指针的语言使用,并可作为在支持与不支持指针的语言间引用数据的一种通用方式。

    IntPtr 对象也可用于保持句柄。例如,IntPtr 的实例广泛地用在 System.IO.FileStream 类中来保持文件句柄。

    IntPtr 类型符合 CLS,而 UIntPtr 类型却不符合。只有 IntPtr 类型可用在公共语言运行库中。UIntPtr 类型大多数是提供来维护与 IntPtr 类型之间的体系结构上的对称性。

    此类型实现 ISerializable 接口。 此类型是线程安全的。