为什么malloc和:: operator new不混合?

时间:2016-03-19 15:53:33

标签: c++

众所周知,new(/ delete)和malloc(/ free)不会混在一起。 是什么原因导致它们无法兼容?

我理解newdelete有两个职责:除了分配和解除分配之外还要构建和销毁,以便使问题更准确:为什么不是::operator new和{{} {1}}分别拨打::operator delete::malloc所需的功能?

强制兼容性至少允许::free原始(或可重新定位的非原始)类型的realloc数组,这些类型可以带来非显着的性能优势,并且它会使事情变得更简单。绝对想要new free内存(当不需要破坏时)。

那么在这里打破与new的兼容性的原因是什么?

0 个答案:

没有答案