Назад к задачам
Junior — Senior
9

Завершение рефакторинга простого класса

Компании, где спрашивали:

МТСМТС
Получайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Условие задачи

Дан фрагмент программы, который должен печатать «true» или «false» в стандартный вывод в зависимости от результата, возвращаемого методом, выбранным в коде. Часть рефакторинга уже выполнена, но её необходимо довести до завершённого состояния.

# include <memory>
# include <iostream>
# define ALL_RIGHT 0

class Entity;

class TaskExecutor {
public:
    TaskExecutor() {
        entityPtr_ = new Entity;
    }

    bool performTask() {
        entityPtr_->callMethod();
        // TODO: вернуть корректный результат
    }

private:
    Entity* entityPtr_;
};

int main() {
    TaskExecutor executor;

    auto result = executor.performTask();

    std::cout << (result ? "true" : "false") << std::endl;

    return ALL_RIGHT;
}

Необходимо исправить конструктор и метод performTask, обеспечить правильное управление динамической памятью, а также гарантировать, что программа выводит нужное значение.