C++ 中 C++ 的 new/delete 相当于什么?
还是在 C/C++ 中也一样?
最佳答案
C 中没有 new
/delete
表达式。
最接近的等价物是malloc
and free
functions , 如果你忽略构造函数/析构函数和类型安全。
#include <stdlib.h>
int* p = malloc(sizeof(*p)); // int* p = new int;
...
free(p); // delete p;
int* a = malloc(12*sizeof(*a)); // int* a = new int[12];
...
free(a); // delete[] a;
关于c++ - 什么是 C 中 C++ 的新/删除等价物?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2839551/