new和delete
Posted chris_chan1024
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了new和delete相关的知识,希望对你有一定的参考价值。
sizeof不是函数,和它类似,new和delete也不是函数,它们都是C++定义的关键字,通过特定的语法可以组成表达式。
和malloc不同,malloc申请完空间后不会对内存进行必要的初始化,而new可以。
new的用法:
1、new()分配这种类型的一个大小的内存空间,并以括号中的值来初始化这个变量;
2、new[]分配这种类型的n个大小的内存空间,并以默认构造函数来初始化这些变量。
开辟单变量地址空间:
1、new int; //开辟一个存放数组的存储空间,返回一个指向该存储空间的地址。int *a=new int;
2、int *p=new int(5); //作用同上,但是同时将整数赋值为5。
delete用法:
1、int *a=new int;
delete a; //释放单个int空间
2、int *a=new int[5];
delete [] a; //释放int数组空间
以上是关于new和delete的主要内容,如果未能解决你的问题,请参考以下文章