new分配内存:
(ListNode 是一个结构体类型)
ListNode *L=new ListNode() 初始化一个空节点,无值,不提倡此种写法。
ListNode *L=new ListNode(0) 初始化一个节点值为0的空节点,最常用最正规写法
ListNode *L=null 为空,什么都没有;
1、分配单个变量空间
Type *pointer = new Type;delete pointer
2、分配数组空间
Type *pointer = new Type[N]; delete[] pointer
动态内存方法的两种方法实际上是C++标准库提供的库函数
void *operator new(size_t); //allocate an object | void *operator delete(void *); //free an object |
void *operator new[](size_t); //allocate an array | void *operator delete[](void *); //free an array |
3、关键字new 与函数malloc的区别
new | malloc |
C++关键词 | C库函数 |
以具体类型为单位进行内存分配 | 以字节为单位进行内存分配 |
new在申请单个类型变量时可进行初始化 | malloc不具备内存初始化的特性 |
来源:CSDN
作者:毛先森
链接:https://blog.csdn.net/weixin_41586854/article/details/104444750