bad_alloc в C ++

Опубликовано: 31 Декабря, 2021

Предпосылка: исключения в C ++

Стандартный C ++ содержит несколько встроенных классов исключений. Чаще всего используется bad_alloc, который выдается, если возникает ошибка при попытке выделить память с помощью new.

Этот класс является производным от исключения.

Чтобы использовать bad_alloc, нужно настроить соответствующие блоки try и catch. Вот небольшой пример, показывающий, как это используется:

C ++

// CPP code for bad_alloc
#include <iostream>
#include <new>
// Driver code
int main () {
try
{
int * gfg_array = new int [100000000];
}
catch (std::bad_alloc & ba)
{
std::cerr << "bad_alloc caught: " << ba.what();
}
return 0;
}


Ошибка выполнения :
bad_alloc пойман: std :: bad_alloc
Хотите узнать о лучших видео и практических задачах, ознакомьтесь с базовым курсом C ++ для базового и продвинутого уровня C ++ и курсом C ++ STL для базового уровня плюс STL. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .
C++