Nova Biblioteca C ++ - nothrow

Descrição

Esta é uma constante nothrow e este valor constante é usado como um argumento para operator new e operator new [] para indicar que essas funções não devem lançar uma exceção em caso de falha, mas retornar um ponteiro nulo.

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

extern const nothrow_t nothrow;

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 :: nothrow.

#include <iostream>
#include <new>

int main () {
   std::cout << "Attempting to allocate...";
   char* p = new (std::nothrow) char [1024*1024];
   if (p==0) std::cout << "Failed!\n";
   else {
      std::cout << "Succeeded!\n";
      delete[] p;
   }
   return 0;
}

A saída deve ser assim -

Attempting to allocate...Succeeded!