Проверить корректность реализации IEnumerable и IEnumerable - C#
Формулировка задачи:
Гуру, выручайте!
Разбираюсь в создании обобщенной коллекции и запутался в том, как реализовать интерфейсы IEnumerable<T> и IEnumerable, хотя IEnumerator вроде бы сделан правильно?
P.S. Оные интерфейсы в самом конце коллекции
P.P.S. Заранее спасибо!
Листинг программы
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- namespace Collections
- {
- class DoubleEndedQueue<T>: ICollection<T>, IList<T>
- {
- //СПИСОК ОБЪЕКТОВ
- private List<T> items;
- //КОНСТРУКТОР
- public DoubleEndedQueue()
- {
- items = new List<T>();
- }
- //РЕАЛИЗАЦИЯ ICollection<T>
- #region ICollection<T> Members
- public void Add(T item)
- {
- items.Add(item);
- }
- public void Clear()
- {
- items.Clear();
- }
- public bool Contains(T item)
- {
- return items.Contains(item);
- }
- public void CopyTo(T[] array, int arrayIndex)
- {
- items.CopyTo(array, arrayIndex);
- }
- public int Count
- {
- get
- {
- return this.Count;
- }
- }
- public bool IsReadOnly
- {
- get
- {
- return false;
- }
- }
- public bool Remove(T item)
- {
- return items.Remove(item);
- }
- #endregion
- //РЕАЛИЗАЦИЯ IList<T>
- #region List<T> Members
- public int IndexOf(T item)
- {
- return items.IndexOf(item);
- }
- public void Insert(int index, T item)
- {
- items.Insert(index, item);
- }
- public void RemoveAt(int index)
- {
- items.RemoveAt(index);
- }
- //Indexer
- public T this[int index]
- {
- get
- {
- return items[index];
- }
- set
- {
- items[index] = value;
- }
- }
- #endregion
- //РЕАЛИЗАЦИЯ IDisposable
- #region IDisposable Members
- public void Dispose()
- {
- GC.SuppressFinalize(this);
- }
- #endregion
- //РЕАЛИЗАЦИЯ IEnumerator
- #region IEnumerator<T> Members
- int pointer = -1;
- object Current
- {
- get
- {
- return items[pointer];
- }
- }
- bool MoveNext()
- {
- if (pointer < (this.Count - 1))
- {
- pointer++;
- return true;
- }
- else
- {
- return false;
- }
- }
- void Reset()
- {
- pointer = -1;
- }
- #endregion
- //РЕАЛИЗАЦИЯ IEnumerable
- #region
- // IEnumerator IEnumerable.GetEnumerator()
- // {
- // return new IEnumerator(items);
- // }
- #endregion
- //РЕАЛИЗАЦИЯ IEnumerable<T>
- #region IEnumerable<T> Members
- // IEnumerator<T> IEnumerable<T>.GetEnumerator()
- // {
- // return new IEnumerable<T>(items);
- // }
- #endregion
- }
- }
Решение задачи: «Проверить корректность реализации IEnumerable и IEnumerable»
textual
Листинг программы
- /// </summary>
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д