📄 subject_30812.htm
字号:
<p>
序号:30812 发表者:rhj888 发表日期:2003-02-26 18:51:23
<br>主题:关于new,delete,new[],delete[]的讨论
<br>内容:一。关于new ,是在堆栈中动态分配空间,<BR>class myclass;<BR>myclass *pm;<BR>mp=new myclass;<BR>这比较好理解<BR>若上面最后一句改为:<BR>mp=new myclass[9];<BR>也对,那么new[]是怎么用的,又和上面有什么区别呀?<BR>我也看到:<BR>int *i=new int(10);<BR>有点不太明白,i是int的指针,为什么又有10字节空间,那它所能表示的值的范围是多少呢?
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:tjhe 回复日期:2003-02-26 19:26:30
<br>内容:new申请堆内存有两种方式:<BR>1.数组方式new[],删除使用delete[],确保数组中各对象调用析构函数<BR>mp=new myclass[9]; //申请9个myclass对象大的空间,按数组方式解释这段空间(元素连续)<BR>......<BR>delete[] mp;<BR><BR>int* pi = new int[10]; //申请10个int大的空间<BR>.............<BR>delete[] pi;<BR><BR>2.申请单一类型空间,并可初始化之,删除时delete 即可<BR>int *i=new int(10); //申请1个int的空间,初始化值为10,不是10字节空间<BR>.........<BR>delete i;<BR><BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -