new/delete和malloc/free区别:
1,new从自由存储区域开辟空间,malloc从堆上开辟空间;
2,new的返回值类型是安全的,malloc返回值类型不安全;
3,new不需要计算内存开辟大小,malloc需要计算开辟内存的大小;
4,new申请失败抛出异常,malloc返回NULL;
5,new可以进行初始化,malloc不可以进行初始化;
6,new是关键字,malloc是函数;
7,new可以进行重载,malloc不可以;
8,new可以调用malloc,malloc不可以调用new;
9,new可以开辟常量,malloc不可以;
10,new开辟数组是new[],malloc无论是数组还是变量都是一样;