c – 删除指针是什么意思?

前端之家收集整理的这篇文章主要介绍了c – 删除指针是什么意思?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
正在删除一个与释放指针一样的指针(分配内存)?

解决方法

删除一个指针(或删除它指向什么,或者)意味着
delete p;
delete[] p; // for arrays@H_403_7@ 
 

p在该声明之前被分配了

p = new type;@H_403_7@ 
 

它也可以指使用动态内存管理的其他方式,如免费

free(p);@H_403_7@ 
 

这是以前使用malloc或calloc分配的

p = malloc(size);@H_403_7@ 
 

后者通常被称为“释放”,而前者通常被称为“删除”. delete用于具有析构函数的类,因为除释放内存之外,delete将调用析构函数.免费(和malloc,calloc等)用于基本类型,但是在C new和delete中也可以使用它们,所以没有太多的理由在C中使用malloc,除了兼容性原因.

原文链接:https://www.f2er.com/c/115539.html

猜你在找的C&C++相关文章