Задача на ооп c++
Определить класс-шаблон с использованием динамического распределения памяти и необходимые конструкторы и операции, включая конструктор копий, операция присваивания и если указано операцию индексации. При выходе за границу, переполнении и т.п. вызвать исключительную ситуацию (определить собственные классы) для информирования программы, вызвавшей метод.
Класс упорядоченный набор элементов заданного типа (для которого заданы операции сравнения)
добавление
При определении друзей класса-шаблона использовать пример (*)
Реализовать main c тестами
(создание объектов и выполнение действий с ними, в т.ч. действие, приводящее к возникновению исключительной ситуации, которую необходимо перехватить)
*:
// предварительные объявления для дружественной функции-шаблона template class task; // есть класс-шаблон
template task* preempt(task*);
// есть функция-шаблон, у которой аргумент - класс-шаблон
template class task {
// ...
friend void next_time(); // друг - обычная функция
friend void process(task*); // друг - экземпляр перегруженной функции
// (не шаблон)
// друг - конкретная инстанция шаблона функции
// с соответствущими аргументами;
friend task* preempt(task*);
// друг - функция-шаблон с таким же аргументом, как у класса
// этот друг требует предварительных объявлений см. выше
template friend int func(C); // все инстанции шаблонной функции
// с любыми аргументами
friend class task; // друг - конкретная инстанция класса-шаблона
template friend class frd; // друг - все инстанции класса-шаблона
// ...
};