В этой задаче предстоит реализовать паттерн прокси

Выполнен
Заказ
6067257
Раздел
Программирование
Тип работы
Антиплагиат
Не указан
Срок сдачи
5 Мая в 23:55
Цена
150 ₽
Блокировка
10 дней
Размещен
4 Мая в 16:54
Просмотров
32
Описание работы

VaultProxy

В этой задаче вам предстоит реализовать паттерн прокси.

class IVault {

public:

virtual bool unlock(int password) = 0;

};

class Vault : public IVault {

int password;

public:

Vault(int password): password(password) {};

bool unlock(int pass) override {

return password == pass;

}

};

Перед вами абстрактный класс IVault, а также его наследник Vault.

Вам нужно написать класс прокси:

class Proxy : public IVault {

public:

Proxy(IVault* realObject, int attempts);

bool unlock(int pass) override;

};

В конструкторе передается указатель на объект Vault, а также переменная attempts.

Прокси должен перенаправлять вызовы unlock к реальному объекту, считать количество неудачных

вызовов, а возвращать тот результат, который вернул лежащий под прокси объект Vault. Однако

помимо этого он считает кол-во неудачных попыток(которые привели к false). Если кол-во

неудачных попыток превысило attempts раз, то прокси должен бросить исключение типа

ExceptionAttempts

class ExceptionAttempts : public std::exception {

};

Если у прокси был вызван unlock, который привел к true, или же прокси бросил исключение, это

этим объектом-прокси более не пользуются.

В систему отправляйте код классов ExceptionAttempts и Proxy, а также любой другой код,

который поможет решить задачу.

Нужна такая же работа?
  • Разместите заказ
  • Выберите исполнителя
  • Получите результат
Гарантия на работу 1 год
Средний балл 4.96
Стоимость Назначаете сами
Эксперт Выбираете сами
Уникальность работы от 70%
Время выполнения заказа:
51 минута
Выполнен в срок
Отзыв о выполненном заказе
Нужна аналогичная работа?
Оформи быстрый заказ и узнай стоимость
Гарантированные бесплатные доработки
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Темы журнала
Показать ещё
Прямой эфир