У меня есть некоторые исключения, полученные от std::exception
или std::runtime_error
. Единственный метод - конструктор explicit MyExceptionX(const char *text = "") : std::exception(text) {}
. Есть ли способы сделать этот код проще без использования макроса?Как автоматизировать объявления классов?
class MyException1: public std::exception
{
public:
explicit MyException1(const char *text = "") : std::exception(text) {}
};
class MyException2: public std::exception
{
public:
explicit MyException2(const char *text = "") : std::exception(text) {}
};
class MyException3: public std::exception
{
public:
explicit MyException3(const char *text = "") : std::exception(text) {}
};
//...
Ваш код должен быть скомпилирован? – juanchopanza
Я думаю, что это действительный случай использования макроса. –
Что я имел в виду, пожалуйста, напишите какой-то код, который, по крайней мере, компилируется. – juanchopanza