C++ 中的free()和delete
C++中delete和free()的区别如下:
- delete 是一个动态释放内存的运算符,而 free() 是一个在运行时销毁内存的函数。
- delete 运算符用于删除使用 new 运算符或 NULL 指针分配的指针,而 free() 函数用于删除使用 malloc()、calloc() 或 realloc() 分配的指针函数或void指针。
- 当delete操作符销毁分配的内存时,则调用C++中类的析构函数,而free()函数不调用析构函数;它只从堆中释放内存。
- delete运算符比 free() 函数快。
delete 删除数组示例
delete []pBuffer;
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
