bad_alloc in C++
Last Updated :
27 Feb, 2018
Improve
Prerequisite : Exceptions in C++
Standard C++ contains several built-in exception classes. The most commonly used is bad_alloc, which is thrown if an error occurs when attempting to allocate memory with new.
This class is derived from exception.
To make use of bad_alloc, one should set up the appropriate try and catch blocks. Here’s a short example, that shows how it’s used :
C++
RunTime error :
// 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 caught: std::bad_alloc
Article Tags :