Example #1
0
        //problema: obtinerea primului (celui mai de jos) element dintr-un stack, FARA a afecta valorile din stack
        //rezolvare: am implementat un extension method pentru Stack<>
        static void Main(string[] args)
        {
            Stack <int> myStack = new Stack <int>();

            myStack.Push(10);
            myStack.Push(20);
            myStack.Push(30);
            //apelez metoda extinsa pe care am implementat-o pentru Stack<>
            Console.WriteLine(myStack.getFirstElement()); //obtinem valoarea "cea mai de jos" din stiva si stack-ul nu este afectat
            Console.WriteLine(myStack.Pop());             //obtinem, asa cum e normal, valoarea cea mai de sus din stiva deoarece nu este afecatata de operatiunea precedenta
        }