C ++新的不同实现

时间:2016-05-04 20:18:35

标签: c++ new-operator

阅读这个问题:How to know which malloc is used?,似乎有很多不同的malloc实现。

我试图为C ++ new运算符找到类似的东西,但无法找到有关如何/ new的实现以及是否存在不同实现的任何信息。他们呢?例如glibc使用什么?

2 个答案:

答案 0 :(得分:1)

我找到了几个分配器:

HOARD(GNU +商业许可证)

MicroQuill SmartHeap for SMP(商业许可证)

Google Perf Tools TCMalloc(BSD许可证)

NedMalloc(BSD许可证)

JemAlloc(BSD许可证)

PTMalloc(GNU,还没有Windows端口?)

英特尔线程构建模块(GNU,商业)

但我仍然很好奇如何确定我的编译器使用的默认分配器......

答案 1 :(得分:-1)

根据我的经验,唯一知道的方法就是强迫它:

ssh -L localhost:9000:machineA:9000 user@machineB

对其他3个版本也这样做。

有人肯定会声称你无法取代标准库版本。如果您动态链接标准库,那么它们是正确的,所以不要这样做。如果你是静态链接,这是有效的。