关于new和delete的一些疑问?
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;
}请问:如果前面第二个new发生问题,抛出异常跳到catch语句,没有执行new char [size * mss]。那么下面仍然调用第三个delete[] tempb会不会出现问题呢? 谢谢
...全文
相关推荐
new,delete和指针
new,delete和指针实例讲解
C++中new和delete的介绍
今天小编就为大家分享一篇关于C++中new和delete的介绍,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
C++动态内存分配(new/new[]和delete/delete[])详解
主要介绍了C++动态内存分配(new/new[]和delete/delete[])详解的相关资料,需要的朋友可以参考下
C++中new和delete的使用方法详解
C++中new和delete的使用方法详解 new和delete运算符用于动态分配和撤销内存的运算符 new用法: 1. 开辟单变量地址空间 1)new int; //开辟一个存放数组的存储空间,返回一个指向该存储空间的地址.int *a = new int 即为将一个int类型的地址赋值给整型指针a. 2)int *a = new int(5) 作用同上,但是同时将整数赋值为5 2. 开辟数组空间 一维: int *a = new int[100
使用new和delete创建二维数组
使用new和delete创建二维数组,作业习题中的一道,希望能有所帮助


