堆对象

王朝百科·作者佚名  2010-06-17  
宽屏版  字体: |||超大  

堆对象就是在程序运行过程中可以随时建立或删除的对象,可以用new运算符(或malloc函数)或者delete运算符(或free函数)。1、new运算符

new <类型说明符>(初始值列表) 注:初始值列表可以省略

new运算符返回一个指针,指针类型与new对象所分配的对象相匹配。

例子1:

int *a;

a=new int(2); (相当于在后面又加了一句*a=2;)

例子2:

int *p;

p=new int[10]; 注:用new[]创建对象数组和一般数组时不能为该数组指定初始值。

例子3:

class A;

A *ptr;

ptr=new A(1,2);

例子4:

源程序:

#include <iostream.h>

void main()

{

int **pp;

int *p;

p=new int(10);

pp=new (int*);

pp=&p;

cout<<**pp<<endl;

}

运行结果:

10

2、delete运算符

delete<指针名>

delete[] <指针名>

使用delete运算符只是删除了指针名指向的内存空间中的值,该指针还是可以在下面的程序中继续使用。

注:delete运算符只能删除由new运算符返回的指针,也适合于空指针。

 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝百科 版权所有