#include <new.h>
#include <new>

int new_nh(size_t)
{
 throw std::bad_alloc();
 return 0;
}
_set_new_handler(new_nh);

これをプログラムエントリで実行して、例外を投げるようにしてみな。
vector<>内でメモリが確保できないと、通常はリカバリできないけど
例外を投げるとどうなっているかが分かる。