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); }