Nova Biblioteca C ++ - bad_alloc

Descrição

Esta exceção lançada na falha de alocação de memória e tipo de exceções lançada pelas definições padrão de operador novo e operador novo [] quando eles falham em alocar o espaço de armazenamento solicitado.

A seguir está a declaração para std :: bad_alloc.

class bad_alloc;

Parâmetros

Nenhum

Valor de retorno

Nenhum

Exceções

No-throw guarantee - esta função de membro nunca lança exceções.

Corridas de dados

Nenhum

Exemplo

No exemplo abaixo para std :: bad_alloc.

#include <iostream>
#include <new>
 
int main() {
   try {
      while (true) {
         new int[100000000ul];
      }
   } catch (const std::bad_alloc& e) {
      std::cout << "Allocation failed: " << e.what() << '\n';
   }
}

A saída deve ser assim -

It will throw an exception error