O'Reilly logo

C# in a Nutshell by Peter Drayton, Ted Neward, Ben Albahari

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Name

IntPtr

Synopsis

This is the value type used to store unmanaged pointers or handles (e.g., IntPtr objects are used in the System.IO.FileStream class to hold file handles).

Using this type allows your pointers to be platform-independent, as IntPtr is automatically mapped to a 32-bit integer on 32-bit operating systems and to a 64-bit integer on 64-bit operating systems. The IntPtr type is CLS-compliant and should be used in preference of the UIntPtr.

public struct IntPtr : System.Runtime.Serialization.ISerializable {
// Public Constructors
   public method IntPtr(int value);  
   public method IntPtr(long value);  
   public method IntPtr(void *value);  
// Public Static Fields
   public static readonly field IntPtr Zero;                     // =0
                  // Public Static Properties
   public static field int Size{get; } 
// Public Static Methods
   public static bool operator method !=(
        IntPtr value1, IntPtr value2);  
   public static bool operator method ==(
        IntPtr value1, IntPtr value2);  
   public static explicit operator method int(IntPtr value);  
   public static explicit operator method long(IntPtr value);  
   public static explicit operator method IntPtr(int value);  
   public static explicit operator method IntPtr(long value);  
   public static explicit operator method IntPtr(
        void *value);  
   public static explicit operator method Void(IntPtr value);  
// Public Instance Methods
   public override method bool Equals(object obj);              // overrides ValueType
   public override method int GetHashCode();                     // overrides ValueType
   public method int ToInt32(); public ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required