Введение
В рамках этого испытания вам предстоит разработать надежную систему обработки исключений для температурных датчиков, используемых в научных исследованиях. Ваша цель — создать пользовательский класс TemperatureException, наследуемый от std::runtime_error, и реализовать функцию валидации температуры, которая будет генерировать это исключение при обнаружении некорректных данных.
Создание обработчика исключений температуры
В научных исследованиях точность мониторинга температуры имеет критическое значение. Ваша задача — разработать систему обработки ошибок для датчиков, способную выявлять и фиксировать недопустимые значения.
Задачи
Выполните следующие пункты (TODO) в предоставленном шаблоне кода:
Реализуйте конструктор
TemperatureException:- Инициализируйте базовый класс сообщением об ошибке.
- Сохраните некорректное значение температуры.
Реализуйте функцию
validateTemperature:- Проверьте, входит ли температура в диапазон от -50°C до 100°C.
- Сгенерируйте исключение
TemperatureException, если значение выходит за рамки диапазона.
Требования
- Допустимый диапазон температур: от -50°C до 100°C.
- Сообщение об ошибке: "Temperature Error: Invalid temperature reading".
- Необходимо использовать предложенную структуру классов.
- Не вносите изменения в функцию
main().
Примеры
Скомпилируйте и запустите код для проверки функции валидации. Программа должна выбрасывать исключение TemperatureException при вводе некорректных данных.
g++ temperature_exception.cpp -o temperature_exception
./temperature_exception
При корректной температуре:
Testing valid temperature:
Temperature 25.0°C is valid.
При некорректной температуре:
Temperature Error: Invalid temperature reading
Invalid Temperature: 150°C
Подсказки
- Используйте конструктор
std::runtime_errorдля установки сообщения об ошибке. - Сохраните недопустимое значение температуры в закрытом (private) поле класса исключения.
- Создайте метод-геттер для получения значения ошибочной температуры.
Резюме
Подводя итог: в этом испытании вы создали пользовательский класс TemperatureException на базе std::runtime_error и реализовали логику валидации данных. Это позволило построить надежную систему обработки ошибок для температурных датчиков, что является важным навыком при разработке программного обеспечения для научных исследований.



