new和delete是c++的内存开辟和施放方式,malloc和free是C语言的。他们之间是否能够通用?
答案是:基本可以。
在空间不复杂时,普通的开辟空间是可以通用的。且用new的空间,可以用free释放,用malloc的空间,也可以用delete释放。
但是,但是,new和delete在开辟类空间时,是自动调用构造函数和析构函数的。而malloc和free是没有的。
注:malloc前一般会加(类型*)用于强制类型转换。