M
mywyn
Unregistered / Unconfirmed
GUEST, unregistred user!
我的自定义异常:
class MEx
{
public:
__fastcall MEx(){ShowMessage("create ok");}
__fastcall ~MEx(void){ShowMessage("delete ok");}
};
1.如果这样:
try
{
throw MEx();
}
catch(...)
{
ShowMessage("catch Error");
}
那么 "create ok" 出现一次而 "delete ok" 出现2次
2.如果这样:
MEx e;
try
{
throw e;
}
catch(...)
{
ShowMessage("catch Error");
}
那么 "create ok" 出现一次而 "delete ok" 出现3次
可奇怪的是,如果脱离IDE直接运行或把MEx做成Exception的子类则一切正常
class MEx
{
public:
__fastcall MEx(){ShowMessage("create ok");}
__fastcall ~MEx(void){ShowMessage("delete ok");}
};
1.如果这样:
try
{
throw MEx();
}
catch(...)
{
ShowMessage("catch Error");
}
那么 "create ok" 出现一次而 "delete ok" 出现2次
2.如果这样:
MEx e;
try
{
throw e;
}
catch(...)
{
ShowMessage("catch Error");
}
那么 "create ok" 出现一次而 "delete ok" 出现3次
可奇怪的是,如果脱离IDE直接运行或把MEx做成Exception的子类则一切正常