try{ cout<
try{ cout<<e; throw; }throw默认值?
try{
cout<<e;
throw;
}
这样的throw出来的是什么东西?
------解决方案--------------------
一般在catch块中重新抛出异常。
------解决方案--------------------
个人认为throw;放在try块里面是误用。throw;应该仅放在catch或catch调用的函数中,如果放在其它地方,会导致调用terminate函数。
------解决方案--------------------
throw;表示重新抛出,也就是说前面已经抛出的异常在这里重新抛出。
所以throw;抛出的类型是上面catch到的类型。。。
------解决方案--------------------
看原来的异常是啥类型, 只是接住(catch)后重新抛出而已。
try{
cout<<e;
throw;
}
这样的throw出来的是什么东西?
------解决方案--------------------
一般在catch块中重新抛出异常。
try
{
//xxxx
}catch(...)
{
throw;
}
------解决方案--------------------
个人认为throw;放在try块里面是误用。throw;应该仅放在catch或catch调用的函数中,如果放在其它地方,会导致调用terminate函数。
------解决方案--------------------
throw;表示重新抛出,也就是说前面已经抛出的异常在这里重新抛出。
try
{
// 这里抛出的异常被下面的catch捕获
}catch(...)
{
throw; // 重新抛出被catch到的异常
}
所以throw;抛出的类型是上面catch到的类型。。。
------解决方案--------------------
看原来的异常是啥类型, 只是接住(catch)后重新抛出而已。