Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在尝试一个 C/C++ 程序,我想知道由于堆和其他一些数据结构而使用了多少内存。那么如何找出各种数据结构使用的内存量呢?
我认为 malloc 运算符应该被覆盖,但我不确定是否相同。 我正在使用 Linux 和 Netbeans 7.1。
您可以按照类似问题中的建议为 C++ 使用内存分析器,例如 Valgrind。看到这个
对于 netbeans IDE 看看这个。
如果您想使用手工制作的内存分析,那么您需要重载operator new和/或malloc()运行。虽然malloc()可以很容易地重载,但你需要使用宏技巧。
operator new
malloc()
使用和重载operator new的优势在于,它更容易、更优雅,并且您可以单独评估每种类型的struct/ class。
struct
class