Demonstrates using the this intrinsic variable, which allows a class instance to identify itself

image_pdfimage_print

   

/*
C# Programming Tips & Techniques
by Charles Wright, Kris Jamsa

Publisher: Osborne/McGraw-Hill (December 28, 2001)
ISBN: 0072193794
*/
//
// This.cs -- Demonstrates using the this intrinsic variable, which
//            allows a class instance to identify itself
//
//            Compile this program with the following command line:
//                C:>csc this.cs
//
namespace nsThis
{
    using System;
    
    public class ThisclsMain
    {
        static public void Main ()
        {
            // Declare an array of classes
            clsThis [] arr = new clsThis[]
                            {
                            new clsThis(), new clsThis(), new clsThis(),
                            new clsThis(), new clsThis(), new clsThis()
                            };
            Console.WriteLine ("{0} instances were created", arr[0].m_Instance);
            // Ask each instance in the array to identify itself
            foreach (clsThis inst in arr)
            {
                Console.WriteLine ("This is instance Number " +
                                inst.Identify().Instance);
            }
        }
    }
    internal class clsThis
    {
        public clsThis ()
        {
            m_Instance = ++Count;
        }
        private static int Count = 0;
        public int Instance
        {
            get {return (m_Instance);}
        }
        internal int m_Instance;
        public clsThis Identify ()
        {
            // Return this instance of the class
            return (this);
        }
    }
}