class
<new>

std::bad_alloc

class 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