gpt4 book ai didi

c++ - C++ new operator 在下面使用 malloc() 吗?

转载 作者:太空狗 更新时间:2023-10-29 22:57:28 26 4
gpt4 key购买 nike

换句话说,它是否每次调用时都执行 malloc() 系统调用? (也许通过提前分配一大块)

最佳答案

在 C++14 之前,标准禁止实现组合分配。因此,每个 new 表达式确实与对某个系统分配函数(可能是 malloc)的调用一一对应。

C++14 relaxed this restriction在某些情况下。如果一个分配的生命周期严格在另一个的生命周期内,则实现现在可以合并分配。不过,这是一个相当狭窄的限制,所以我预计分配实际上不会经常合并。

关于c++ - C++ new operator 在下面使用 malloc() 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43957649/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com