为什么用try catch不住exception?# Programming - 葵花宝典
u*u
1 楼
比方这么一段程序:
int a=1, b=0,c;
int *p;
try {
c = a / b ;
p = new int [300000000]; //3Gmemory
}
catch (...)
{
cout << "error";
}
应该出现两个exception,一个是divided by zero,一个是failed to allocate memory,
本意是应该让catch 来输出出错,并不中断程序执行。
但是编出来的程序不能catch任何一个exception,程序还是会被中断。这到底是什么原因
呢?哪位高手指教一下吧。
环境:windows, bcc5, console application.
int a=1, b=0,c;
int *p;
try {
c = a / b ;
p = new int [300000000]; //3Gmemory
}
catch (...)
{
cout << "error";
}
应该出现两个exception,一个是divided by zero,一个是failed to allocate memory,
本意是应该让catch 来输出出错,并不中断程序执行。
但是编出来的程序不能catch任何一个exception,程序还是会被中断。这到底是什么原因
呢?哪位高手指教一下吧。
环境:windows, bcc5, console application.