diff --git a/Exceptions.cpp b/Exceptions.cpp new file mode 100644 index 0000000..2c6fd94 --- /dev/null +++ b/Exceptions.cpp @@ -0,0 +1,22 @@ +#include"Exceptions.h" +BaseException::BaseException(const string& message) { + this->message = message; +} +string InputError::what() const { + return message; +} +InputError::InputError(const string& message) :BaseException(message) { + +} +string FileError::what() const { + return message; +} +FileError::FileError(const string& message) :BaseException(message) { + +} +string IndexError::what() const { + return message; +} +IndexError::IndexError(const string& message) :BaseException(message) { + +} diff --git a/Exceptions.h b/Exceptions.h new file mode 100644 index 0000000..a333786 --- /dev/null +++ b/Exceptions.h @@ -0,0 +1,32 @@ +#pragma once +#include +#include +#include +#include +#include +using namespace std; +class BaseException { +public: + BaseException(const string& message); + + virtual string what() const=0; + string message; +}; +class InputError :public BaseException { +public: + InputError(const string& message); + + virtual string what() const; +}; +class FileError :public BaseException { +public: + FileError(const string& message); + + virtual string what() const; +}; +class IndexError :public BaseException { +public: + IndexError(const string& message); + + virtual string what() const; +}; \ No newline at end of file