Freigeben über


Behandeln von Bedingungen, unter denen nicht genügend Arbeitsspeicher vorhanden ist

Eine Überprüfung auf fehlerhafte Speicherbelegung kann mit Code wie dem folgenden durchgeführt werden:

// 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;
   }
}

Es gibt eine andere Möglichkeit, um Fehler bei Speicherbelegungsanforderungen zu behandeln: Schreiben Sie eine benutzerdefinierte Wiederherstellungsroutine, um einen solchen Fehler zu behandeln, und registrieren Sie Ihre Funktion anschließend, indem Sie die Laufzeitfunktion _set_new_handler aufrufen.

Siehe auch

Referenz

operator new-Funktion