Почему не работает фильтр исключений?
От: Studentus  
Дата: 24.08.06 10:35
Оценка:
Есть код:


#include "stdafx.h"
#include <iostream>

void foo()throw()
{
    new double[0xfffffff];    
}

int _tmain(int argc, _TCHAR* argv[])
{
    try{
    for(int i = 0; i < 20; i++)
        foo();
    }
    catch (std::bad_alloc) {
        std::cout << "bad::alloc";
    }
    return 0;
}


компилю. запускаю.
на выходе в консоли: bad_alloc
Объясните плизз дураку почему?
разве:
void foo()throw()
не должно блокировать выход любых исключений наружу?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.