Friday, November 11, 2016

Reference

  class BaseRef
    {              
        public void Display()
        {
            List objLst = new List();
            List objLst2 = objLst;

            objLst.Add(1);
            objLst.Add(2);

            ListByVal(objLst);

            Console.WriteLine("Count " + objLst.Count);// 3
            Console.WriteLine("First Val " + objLst[0]);//1
            Console.WriteLine(objLst == objLst2);// true

            ListByRef(ref objLst);

            Console.WriteLine("Count " + objLst.Count); // 2
            Console.WriteLine("First Val " + objLst[0]);// 3
            Console.WriteLine(objLst == objLst2);// false

        }

        private void ListByRef(ref List objLst)
        {
            objLst.Add(5);

            objLst = new List();
            objLst.Add(3);
            objLst.Add(4);
        }

        private void ListByVal(List objLst)
        {
            objLst.Add(5);

            objLst = new List();
            objLst.Add(3);
            objLst.Add(4);
        }
    }

    public class MainClass1
    {
        public void Show()
        {
            BaseRef objBase = new BaseRef();
            objBase.Display();                      
        }
    }

No comments:

Followers

Link