WHCSRL 技术网

C++ 07 翁恺>new & delete

说明new一个对象的时候,先分配空间再调用构造函数delete一个对象的时候,先调用析构函数再销毁对象的空间new的时候带 [  ] delete销毁的时候也带 [  ] 

 

说明:new int [10] 动态分配数组,new int [10] 就是带括号 [ ] 的new ,意思是分配10个 int 类型的空间,给指针 psome,这就需要用delete [ ] 来销毁这个空间,也就是说 psome 所指的是很多东西,销毁的时候 psome 所指的那么多个东西的析构函数都会被调如果不写括号,空间还是会被回收,但只有第一个会调用析构函数。

 

 

说明:程序运行的时候,操作系统会给程序分配一段空间,由程序自己去管理。当 new 创建对象时,内存中会有一个 记录当前对象分配了多少空间(从程序自己已经获得的空间中再分配,以字节来计算,而不是像操作系统申请空间,而你new多少空间,也会被记录下来),如上图4,40,16,160,以及空间的地址

 

推荐阅读