gpt4 book ai didi

c++ - 为什么这段代码不会导致内存泄漏?

转载 作者:IT老高 更新时间:2023-10-28 12:44:21 24 4
gpt4 key购买 nike

我用 valgrind--leak-check=full 检查了 C++ 中的以下代码,它说没有内存泄漏。这是为什么呢?

char *p = new char[256];
delete p;
据我所知,

new[] 应该与 delete[] 匹配。

最佳答案

尽管正如@KillianDS 所说,这是未定义的行为,但差异可能与 deletedelete[] 都释放底层内存的事实有关。 delete[] 的要点是在释放内存之前调用数组中每个对象的析构函数。由于 charPOD并且没有析构函数,在这种情况下两者之间没有任何有效区别。

但是,您绝对不应该依赖它。

关于c++ - 为什么这段代码不会导致内存泄漏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19044809/

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