public object Pop() { if (_head == null) { throw new InvalidOperationException("Стек пуст"); } var oldEl = _head; _head = _head.Next; return(oldEl.Data); }
public void Push(object obj) { //расточительно обертывать каждый элемент в еще один объект, поэтому данная реализация работает медленнее чем стандартная var newEl = new MyStackEl { Data = obj, Next = _head }; _head = newEl; }