예제 #1
0
        public void Clone()
        {
            Deque <int> deque1, deque2, deque3, deque4;

            deque1 = new Deque <int>();
            deque2 = deque1.Clone();
            deque3 = new Deque <int>(deque1); //(Deque<int>)(((ICloneable)deque1).Clone());
            deque4 = new Deque <int>(deque1);
            InterfaceTests.TestListGeneric <int>(deque2, new int[0], null);
            InterfaceTests.TestListGeneric <int>(deque3, new int[0], null);
            InterfaceTests.TestListGeneric <int>(deque4, new int[0], null);
            deque1.Add(5);
            InterfaceTests.TestListGeneric <int>(deque2, new int[0], null);
            InterfaceTests.TestListGeneric <int>(deque3, new int[0], null);
            InterfaceTests.TestListGeneric <int>(deque4, new int[0], null);

            int[] array = new int[100];
            for (int i = 0; i < 100; ++i)
            {
                array[i] = i;
            }
            deque1.Clear();
            for (int i = 63; i < 100; ++i)
            {
                deque1.AddToBack(i);
            }
            for (int i = 62; i >= 0; --i)
            {
                deque1.AddToFront(i);
            }
            deque2 = deque1.Clone();
            deque3 = new Deque <int>(deque1); //(Deque<int>)(((ICloneable)deque1).Clone());
            deque4 = new Deque <int>(deque1);
            InterfaceTests.TestListGeneric <int>(deque2, array, null);
            InterfaceTests.TestListGeneric <int>(deque3, array, null);
            InterfaceTests.TestListGeneric <int>(deque4, array, null);
            deque4.Clear();
            InterfaceTests.TestListGeneric <int>(deque1, array, null);
            InterfaceTests.TestListGeneric <int>(deque2, array, null);
            InterfaceTests.TestListGeneric <int>(deque3, array, null);
        }