C++中,new有三种:
1、Operator new
例: string *str=operator new(len);
相当于malloc(c语言),只分配内存
反义词,相当于free(c语言)
2、new operator
例: int*p=new int;
最普遍的一种,就是new,是运算符(sizeof也是运算符)
不仅分配内存,还会调用构造函数
3、place new
例:new((T1*)p) T1(value)
不分配内存,在已有的内存上构建对象