1, 申请内存所在的位置 new 操作符从自由存储区上为对象动态分配内存空间,而 malloc 函数从堆上动态分配内存.自由存储区是C++基于 new 操作符的一个抽象概念,而堆是操作系统中的术语,是操作系统所维护的一块特殊内存,用于程序的内存动态分配.自由存储区不仅可以是堆,还可以是静态存储区,这都看 operator new 在哪里为对象分配内存. 特别的,new 甚至可以不为对象分配内存,如: new (place_address)type . place_address 为一个指针,代表…