Ответ 1
Конструктор Microsoft Visual С++ std::exception(const char*)
нестандартен. Хотя в стандартной библиотеке С++ std:: exception имеет метод const char* what() const
, он не предоставляет способ указания строки, кроме переопределения.
Вы должны переписать свой код, чтобы использовать std::runtime_error
или один из других классов из <stdexcept>
в качестве альтернативы. Существующий код, который ловит std:: exception, не обязательно должен быть изменен, конечно, поскольку из него выводится std:: runtime_error.