是否有可能仅通过在C ++中存储分配的指针地址来分析内存?

问题描述 投票:1回答:2

我想创建一个简单的内存分析器。它将存储与分配的大小相关联的运算符new(或直接从malloc()返回)的地址-作为某些数据库中的事件。然后,我只想使用传递给运算符delete(或free())的地址来跟踪释放。

是真的,在C ++中,我可以确定传递给运算符delete(或free())的指针始终是先前分配的指针?

我不确定C ++分配器中是否存在某些隐藏的指针算法,该算法允许删除上转换或下转换的指针,而不是原始指针。

我想创建一个简单的内存分析器。它将存储与分配的大小相关联的操作符new(或直接从malloc()直接)返回的地址-作为某些数据库中的事件。然后我想...

c++ dynamic-memory-allocation allocator memory-profiling
2个回答
1
投票

是真的,在C ++中,我可以确定传递给运算符delete(或free())的指针始终是以前分配的指针?


0
投票

我不确定C ++分配器中是否存在某些隐藏的指针算法,该算法允许删除上转换或下转换的指针,而不是原始指针。

© www.soinside.com 2019 - 2024. All rights reserved.