Преимущества создания собственного класса просты: вы можете отправить его в обработчик catch
.
Если вы решите не реализовывать свой собственный класс, я все еще сомневаюсь, что вам нужен этот typedef: что выабстрагируясь от?Вы также можете использовать простую std::runtime_error
.
. Также вас может заинтересовать статья Дэвида Абрахамса об обработке исключений и реализации вашего собственного класса исключений.