社区
C语言
帖子详情
关于delete的问题
edwardpro
2003-09-29 12:57:32
比如我如下:
int **p;
:
:
最后我要用delete息构这个**p应该怎么操作?
...全文
31
6
打赏
收藏
关于delete的问题
比如我如下: int **p; : : 最后我要用delete息构这个**p应该怎么操作?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
grail0922
2003-09-29
打赏
举报
回复
new和delete是内存分配操作符,new用于分配内存,delete用于释放内存。
堆是计算机中一大块未使用的内存(除去操作系统和正在使用的应用程序所占内存之外的剩余内存),它的大小是随时在改变的,所以是动态内存。
在用new分配内存时不必对返回指针做类型转换。分配单一变量如int、float没有意义,分配数组时只需一个指针指向它的多个元素。
char *eName=new char[9];
delete [] eName;//释放为eName分配的所有内存。
堆不会自己初始化,必须用自己的数据初始化。
应该在分配内存时进行初始化
char * eName=new char('a');//这是一个字符。
char * eName=new char[9];//这是一个数组,有九个元素(如果是字符串,还要包括NULL0的空间)。
strcpy(eName,"base wood");//初始化数组的例子。
两维或两维以上的数组称为多维数组,也可叫矩阵(一维以上的数组,也称表)。
dataType (*matrixName)[numELs]....//矩阵变量的定义。
dataType//是任意的数据类型包括用户自定义的
matrixName//矩阵变量的名
numELs//除第一维后的维的大小。
例子:
float (* table)[6];//定义矩阵变量
table=new float[5][6];//分配存放30个浮点数的内存给矩阵变量。
float * table[6]=new float[5][6];//可以合并为:
delete [] table;//全部释放
siriuscor
2003-09-29
打赏
举报
回复
应该象五个三角的人说的那样:)
grail0922
2003-09-29
打赏
举报
回复
在析构函数中
if(!*p==MULL)
*p=NULL;
sevecol
2003-09-29
打赏
举报
回复
你需要知道具体指向的是new产生的数组还是非数组
int *p=new int(100);
int **pp=&p;
delete (*pp);
int *p=new int[100];
int **pp=&p;
delete[] (*pp);
eve81
2003-09-29
打赏
举报
回复
先NEW一个。比如NEW *P=A;
再DELETE *P;
anetfish
2003-09-29
打赏
举报
回复
delete 跟 new 是一对,不能单独使用。
C++中的
delete
和
delete
[ ]的区别
以前看书的时候,书上说使用new申请的内存,释放时用
delete
,使用new [ ]申请的内存释放时要用
delete
[ ]才行,这两个一定要记住,申请时用了方括号,则释放时也要加上方括号,否则就会出错。但是并没有解释为什么这样,会出什么错。今天正好看到这个,记录下。关于动态申请的内存,分两种情况:基本数据类型的分配和自定义数据类型的分配。两者不同。1、基本数据类型 对于基本数据类型,假如有如下代...
在 JS 中要尽量避免使用
delete
操作符
目录一、
delete
操作符灵魂六问1、
delete
的返回值是什么?2、
delete
删除不存在的属性返回值是什么?3、
delete
能不能删除原型上的属性?4、
delete
能否删除变量?5、
delete
删除数组某个数据,数组长度会不会变?6、哪些属性不能被
delete
删除?二、若不使用
delete
,该如何删除对象的属性? 一、
delete
操作符灵魂六问 关于
delete
操作符的几个
问题
:
delete
的返回值是什么?
delete
删除不存在的属性返回值是什么?
delete
能不
关于
delete
基本数据类型数组/对象数据/字符串 需不需要加 [ ],是否造成内存泄漏,怎么检测
1. new/
delete
和 new[]/
delete
[] 要配对使用! 记住这个原则就行; 2. 对于基本数据类型数组,实践证明
delete
和
delete
[] 都没
问题
,但是使用
delete
时 Clion 会提示建议使用
delete
[],通过内存泄漏检测可以发现,
delete
会触发 **MismatchedFree** 警告,即使没有泄漏,所以建议用了 new[],就要用
delete
[] 释放; 3. 对于对象数组,必须使用
delete
[] 释放,否则会造成内存泄漏,因为 d
mysql
delete
问题
,mysql
delete
的
问题
小结 | 很文博客
关于mysql
delete
的
问题
,需要的朋友可以参考下。由于mysql数据库的相关内部
问题
导致
delete
from table where col not in (select col from table group by xx)会提示报错我们要做的是createtabletmpseletecolfromtablegroupbyxx;
delete
fromtablewh...
[
问题
]
delete
p和
delete
[] p 区别
目录 区别 延伸 区别 简单来说:
delete
p会调用一次析构函数,而
delete
[] p会调用每个成员的析构函数。 class A { public: ~A() { cout << "A的析构函数" << endl; } }; int main() { A* pA = new A[10];
delete
[]pA;//输出10次A的析构函数 //
delete
pA;//会出错,因为只析构了一次 A* pA1 = new A;
delete
pA1
C语言
69,369
社区成员
243,082
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章