Gestion de conditions de mémoire insuffisante
Un test d'échec d'allocation de mémoire peut être effectué avec un code tel que le suivant :
// 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;
}
}
Il existe d'autres manières de gérer les échecs des demandes d'allocation de mémoire : écrivez une routine de récupération personnalisée pour gérer un tel échec, puis inscrivez votre fonction en appelant la fonction runtime _set_new_handler.