class
<new>
std::bad_alloc
Exception thrown on failure allocating memory
Type of the exceptions thrown by the standard definitions of operator new and operator new[] when they fail to allocate the requested storage space.
This class is derived from exception. See the exception class for the member definitions of standard exceptions.
Its member what returns a null-terminated character sequence identifying the exception.
Example
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
// bad_alloc example
#include <iostream> // std::cout
#include <new> // std::bad_alloc
int main () {
try
{
int* myarray= new int[10000];
}
catch (std::bad_alloc& ba)
{
std::cerr << "bad_alloc caught: " << ba.what() << '\n';
}
return 0;
}
|
Possible output:
bad_alloc caught: bad allocation
|
Exception safety
No-throw guarantee: no members throw exceptions.
See also
- exception
- Standard exception class (class)