Класс overflow_error
Класс overflow_error наследуется от класса
runtime_error и используется для генерации
исключения при арифметическом переполнении. Данное
исключение обычно выбрасывается, когда результат
вычисления выходит за пределы допустимого диапазона
значений для данного типа данных. Конструктор класса
принимает строку с описанием ошибки, которую можно
получить с помощью метода what.
Синтаксис
overflow_error(const string& what_arg);
В параметр what_arg передается строка с
описанием ошибки.
Пример
Давайте создадим и выбросим исключение
overflow_error, а затем перехватим его
в блоке catch:
#include <iostream>
#include <stdexcept>
using namespace std;
int main()
{
try
{
throw overflow_error("integer overflow");
}
catch (const overflow_error& e)
{
cout << e.what() << endl;
}
return 0;
}
Результат выполнения кода:
"integer overflow"
Пример
Давайте перехватим исключение overflow_error
как исключение базового класса runtime_error:
#include <iostream>
#include <stdexcept>
using namespace std;
int main()
{
try
{
throw overflow_error("addition overflow");
}
catch (const runtime_error& e)
{
cout << e.what() << endl;
}
return 0;
}
Результат выполнения кода:
"addition overflow"
Смотрите также
-
класс
runtime_error,
который является базовым классом для overflow_error -
класс
underflow_error,
который сигнализирует о потере значимости -
класс
range_error,
который сигнализирует о выходе за пределы диапазона -
метод
what,
который возвращает описание ошибки