is and Box UnBox : Boxing Unboxing « Data Types « C# / C Sharp






is and Box UnBox

is and Box UnBox
 
/*
C# Programming Tips & Techniques
by Charles Wright, Kris Jamsa

Publisher: Osborne/McGraw-Hill (December 28, 2001)
ISBN: 0072193794
*/
namespace nsBox
{
    using System;
    struct Point
    {
        public Point (int x, int y)
        {
            cx = x;
            cy = y;
        }
        public override string ToString ()
        {
            return ("(" + cx + ", " + cy + ")");
        }
        public int cx;
        public int cy;
    }

    public class BoxUnBox
    {
        static public void Main ()
        {
            long LongVal = 9600;
            object o = LongVal;
            ShowObject (o);
            o = 4096;
            ShowObject (o);
            Point point = new Point (42, 96);
            ShowObject (point);
            clsBox test = new clsBox();
            ShowObject (test); 
        }
        static public void ShowObject (object o)
        {
            if (o is int)
                Console.WriteLine ("The object is an integer");
            if (o is long)
                Console.WriteLine ("The object is a long");
            else if (o is Point)
                Console.WriteLine ("The object is a Point structure");
            else if (o is clsBox)
                Console.WriteLine ("The object is a clsBox class object");
            Console.WriteLine ("The value of object is " + o + "\r\n");
        }
    }
    class clsBox
    {
        public override string ToString()
        {
            return ("\"-- clsBox --\"");
        }
    }       
}

           
         
  








Related examples in the same category

1.implicit boxing of an int
2.explicit boxing of an int to an object
3.explicit unboxing of an object to an int
4.A simple boxing/unboxing exampleA simple boxing/unboxing example
5.Boxing also occurs when passing valuesBoxing also occurs when passing values
6.Boxing makes it possible to call methods on a valueBoxing makes it possible to call methods on a value
7.Illustrates boxing and unboxingIllustrates boxing and unboxing
8.Automatic boxing and unboxing to pass an undetermined data type to a functionAutomatic boxing and unboxing to pass an undetermined data type to a function
9.Boxing struct object
10.Box to object