#ifndef SRC_MODEL_EXCEPTION_COURSE_TEMPORAL_FRAME_EXCEPTION_H_#define SRC_MODEL_EXCEPTION_COURSE_TEMPORAL_FRAME_EXCEPTION_H_#include <exception>#include <iostream>#include <string>#include "../course.h"classCourseTemporalFrameException:publicstd::exception{private:Course*_course;int_time;std::string_phrase;public:CourseTemporalFrameException(Course*c,inttime)throw():_course(c){this->_phrase="Exception on time frame: value ("+std::to_string(time)+") is uncorrect. Can it be negative?";this->_time=time;}virtualconstchar*what()constthrow(){return_phrase.c_str();}virtual~CourseTemporalFrameException()throw(){//this->_course must not be free by ~this!}Course&getCourse()const{return*(this->_course);}constintgetTime()const{returnthis->_time;}};#endif // SRC_MODEL_EXCEPTION_COURSE_TEMPORAL_FRAME_EXCEPTION_H_