我一直在学习C++,并且遇到了自定义内存分配器的主题。我知道,通过设计一个分配器并将此分配器与标准库容器一起使用,我们可以避免堆分配。同样,似乎我们可以避免内存碎片。这部分是通过使用placement new和placement delete运算符实现的。
在C语言中也可以设计自定义内存分配器,以便我们可以控制内存分配并避免碎片吗?如果有可能,C++是否会简单地以更高的抽象水平提供此功能?
最佳答案
C和C++都是低魔法语言。 C特别是在背后分配很少的内存。例如,它可以对vararg函数执行此操作,但是几乎每个常规数据结构都是由您(程序员)显式分配的。如果调用malloc
,则使用默认堆。如果您 call 其他电话,则使用其他电话。
关于c++ - 自定义内存分配-C v。C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63296671/