Я пытаюсь изменить сообщение для bad_alloc
.Override bad_alloc Exception
#include <iostream>
#include <iomanip>
#include <stdexcept>
using std::logic_error;
using std::bad_alloc;
class OutOfRange : public logic_error {
public:
OutOfRange(): logic_error("Bad pointer") {}
};
class OutOfMem : public bad_alloc {
public:
OutOfMem(): bad_alloc("not enough memory") {}
};
OutOfRange()
работает отлично, но OutOfMem
посылает мне ошибку:
No matching function for call to
std::bad_alloc::bad_alloc(const char[21])
Я стараюсь, что это отправить мне об ошибке рыхлую перекидной спецификатор для 'виртуальной сопзЬ полукокса * OutOfMem :: what() const ' – KarlaE
Как определяется 'what' в std :: exception в вашей настройке? У этого есть спецификатор броска? – doctorlove
хорошо я только это на мой заголовок #include #include #include с использованием зЬй :: logic_error; с использованием std :: bad_alloc; –
KarlaE