C++ Необходимо реализовать библиотеку, экспортирующую следующие классы: 1. Интерфейс IMilitaryMan (военный), содержащий виртуальный деструктор и единственный чисто-виртуальный метод void Serve() (служить). 2. Класс Soldier (солдат), наследующий IMilitaryMan и реализующий его интерфейс. Реализация метода Serve() должна увеличивать количество выполненных поручений солдатом. В конструкторе класса должно устанавливаться начальное количество поручений (jobCount) солдата, равное 0. 3. Класс Officer (офицер) наследующий IMilitaryMan и имеющий подчинённых. Военные (как офицеры, так и солдаты), находящиеся в подчинении офицера, передаются ему в конструкторе в виде массива. Реализация метода Serve() должна делегировать выполнение поручения подчинённым. Деструктор класса Officer должен выполнить освобождение подчинённых. Необходимо реализовать как минимум следующие тесты для проверки классов Soldier и Officer: 1. Создать экземпляр класса Soldier, присвоить его переменной militaryMan типа IMilitaryMan & и убедиться, что при вызове метода militaryMan.Serve() будет увеличено количество выполненных поручений у солдата. 2. Создать экземпляр класса Officer с экземплярами классов подчинённых ему военных: двух солдат и одного офицера, у которого в подчинении находится ещё четыре солдата. Присвоить созданный экземпляр класса Officer переменной militaryMan типа IMilitaryMan & и убедиться, что при вызове метода militaryMan.Serve() у всех шести солдат будет увеличено количество выполненных поручений. 3. Убедиться, что деструкторы подчинённых вызываются при вызове деструктора Officer. Для этого разрешается использовать (экспортировать библиотекой) глобальную переменную с общим количеством существующих на данный момент экземпляров военных.

Ответ:Слишком коротко. Напишите минимум 20 символов, чтобы объяснить все.Объяснение:

C++ Необходимо реализовать библиотеку,
Оценить ответ

Не нравится ответ?

Если ответ на твой вопрос отсутствует, или он не полный, то рекомендуем найти информацию через поиск на сайте.

Найти другие ответы

Загрузить картинку
Новые вопросы и ответы