Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Определить класс-шаблон с использованием динамического распределения памяти и необходимые конструкторы и операции, включая конструктор копий, операция присваивания и если указано операцию индексации. При выходе за границу, переполнении и т.п. вызвать исключительную ситуацию (определить собственные классы) для информирования программы, вызвавшей метод.

Класс упорядоченный набор элементов заданного типа (для которого заданы операции сравнения)

добавление

При определении друзей класса-шаблона использовать пример (*)

Реализовать 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; // друг - все инстанции класса-шаблона

// ...

};

2 года назад
guest_16503742975581
2 года в сервисе
Был
2 года назад