【发布时间】:2019-01-14 04:27:26
【问题描述】:
这里的 cdp 是一个包含一些向量的包。访问向量时会导致分段错误。 (向量是在我仔细检查的范围内访问的)。我计划用 try catch 处理这个异常,但它不起作用。
根据gdb,以下行导致问题。
int firing_crash=cdp->firing_data[0].size();
函数如下:
bool modified_simplex_solver::check_for_corrupt_cdp(converted_data_pack* cdp)
{
try{
int firing_crash=cdp->firing_data[0].size();
int not_firing_crash=cdp->not_firing_data[0].size();
return false;
}
catch(...)
{ return true;}
}
【问题讨论】:
-
你只能
catch一些你throw的东西。这里没有throw。段错误不是 C++ 异常。
标签: c++ segmentation-fault pthreads try-catch