C ++中new和delete的内存行为是什么?

时间:2019-12-12 11:36:46

标签: c++ compilation

我正在谈论内存标志行为。我注意到在新创建的堆内存之前将有12个字节的内存标志。删除堆内存后,标志更改了。喜欢:

auto A = new A;
00 00 00 00 59 1f 12 04 7d bf 00 0c | the heap memory of A |
delete A;
00 00 00 00 59 1f 12 04 4e bf 00 0c | the heap memory of A |

此外,删除后存储器的其他一些部分也已更改。 在这里,我只想弄清楚在执行new和delete操作之后内存将发生什么。以及如何解码堆内存之前的12个字节的数据。 顺便说一句,我正在使用VS2017作为编译工具。

0 个答案:

没有答案