
06.04.2009, 22:18
|
|
Участник форума
Регистрация: 30.01.2009
Сообщений: 196
С нами:
9094175
Репутация:
66
|
|
еще такой вопрос по памяти: хочу сделать обработку исключений следующим способом:
Код:
#include <iostream>
using namespace std;
main()
{
char * a;
for (int x = 0; x<1000; x++)
{
a = new char[10000000];
if (a == NULL)
{
cout << "Error allocating memory\n";
return 0;
}
else
{
cout << x << ")" << "memory allocated successfully\n";
}
}
return 0;
}
но при превышении лимита выделяемой памяти пишет в консоли не мое сообщение а вот что:
Код:
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
Aborted
запускал в bash'e никсов. Как я понимаю это ограничение на уровне самой ОС и его нельзя обойти? :-/
Последний раз редактировалось awdrg; 06.04.2009 в 22:25..
|
|
|