コード例 #1
0
ファイル: Program.cs プロジェクト: lyapinasvetlana/Work
        static void MadeRightStack()
        {
            //теперь обязательно нужно указывать тип
            MyStack2 <int> ms = new MyStack2 <int>();

            ms.Push2(1);
            ms.Push2(2);
            ms.Push2(3);
            while (ms.Count != 0)
            {
                Console.WriteLine(ms.Peek2());

                ms.Pop2();
            }
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: lyapinasvetlana/Work
        static void AddIEnumerable()
        {
            //проблемы нашего MyStack2
            MyStack2 <int> ms = new MyStack2 <int>();

            ms.Push2(1);
            ms.Push2(2);
            ms.Push2(3);
            //выдаёт ошибку на foreach
            //нужно создать интерфейс INumerable
            //решение в MyStack
            foreach (var item in ms)
            {
                Console.WriteLine(item);
            }
            //без этой переделки пришлось бы
            var enumerat = ms.GetEnumerator();

            while (enumerat.MoveNext())
            {
                Console.WriteLine(enumerat.Current);
            }



            //его спеацильно скрывают, но
            //чтобы вызвать метод без T
            //IEnumerable enumer = (IEnumerable)ms;


            while (ms.Count != 0)
            {
                Console.WriteLine(ms.Peek2());

                ms.Pop2();
            }
        }