我正在编写一个C ++程序,它使用的内存比我预期的多(例如用Linux top
命令测量);这种情况很重要,因为可用内存是程序功能的一个重要限制因素。有没有办法告诉哪些数据结构(类或对象)占内存使用量的多少?
当然,我可以将每个对象包装在代码中以单独跟踪其内存使用情况,但我想知道是否有使用gdb
或valgrind
等现有工具的更自动化的解决方案?
答案 0 :(得分:0)
在代码中,您只需使用sizeof
功能。
如果您需要一个工具,您可以在您最喜欢的搜索引擎上查找“性能分析工具C ++”。你会得到很多结果。