Поделиться через


Обработка недостатка памяти

Проверку сбоев при выделении памяти можно выполнять при помощи кода из следующего примера:

// insufficient_memory_conditions.cpp
// compile with: /EHsc
#include <iostream>
using namespace std;
#define BIG_NUMBER 100000000
int main() {
   int *pI = new int[BIG_NUMBER];
   if( pI == 0x0 ) {
      cout << "Insufficient memory" << endl;
      return -1;
   }
}

Существует и другой способ обработки сбоев при выделении памяти: вы можете написать собственную процедуру восстановления, которая будет их обрабатывать, а затем зарегистрировать ее, вызвав функцию времени выполнения _set_new_handler.

См. также

Ссылки

Функция оператор new