64,639
社区成员
发帖
与我相关
我的任务
分享
try
{
tempq = new CQEntry;
tempu = new CUnit [size];//队列大小---32个单元
tempb = new char [size * mss];//数据域长度
}
catch (...)//异常后要删除,如果前面第二个new发生问题,抛出异常跳到catch语句,没有执行new char [size * mss]。那么下面仍然调用第三个delete[] tempb会不会出现问题呢,
{
delete tempq;
delete [] tempu;
delete [] tempb;
return -1;
}
int* p = new(std::nothrow) int(3);
auto tempq = make_shared<CQEntry>();
std::vector<CUnit > tempu(size);
std::vector<CUnit > tempb(size * mss)