Задание из экзамена. Помогите пожалуйста. Я сама не смогу сделать. Язык программирования С++.
1. Создать шаблонный класс "Элемент списка". Инкапсулировать в классе информационное и ссылочное поля списка. Реализовать в классе конструктор по умолчанию для инициализации полей элемента списка, а также методы для чтения и записи полей.
2. На основе базового класса "Элемент списка" создать шаблонный класс "Стек элементов". Реализовать в классе конструктор с параметрами для инициализации стека заданной размерности (размерность стека определяется параметром конструктора) и конструктор копирования. Реализовать в программе деструктор для удаления элементов стека. Реализовать метод, выполняющий вывод всех элементов стека.
3. Реализовать перегрузку операций -- и += для извлечения и добавления элемента.
4. Предусмотреть вызов и обработку исключительной ситуации, возникающей при опустошении стека (т.е. невозможности извлечь элемент из стека), с использованием собственного класса.
5. В функции main реализовать следующие действия, с использованием разработанного класса:
- создание стека с символьными элементами определенной размерности;
- добавление элемента в стек (с использованием перегруженной операции);
- извлечение элемента из стека (с использованием перегруженной операции);
- создание второго стека на основе первого, с использованием конструктора копирования;
- вывод всех элементов второго стека.