Bonjour,
A chaque fois que il y a un "new" dans un programme, faut-il mettre un "catch(std::bad_alloc)" ?
J'ai fait ce prog:
Voici le résultat sur linux:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 #include <iostream> using namespace std; int main() { int *p; try { while(1) { p = new int[3000]; } }catch(bad_alloc) { cout<<"plus de memoire"<<endl; } return 0; }
localhost:/home/zenux# ./a.out
Processus arrêté
Il ne m'a même pas affiché "plus de mémoire" !!!
Merci...
Partager