我有一个使用 arm-none-eabi-gcc
编译的嵌入式应用程序,我遇到了很大的 ram 使用问题。
使用 arm-none-eabi-nm
我可以找出为某个对象分配了多少内存。但是当这个对象是类实现时,我无法找出每个类成员使用了多少内存。怎么知道?
因为类成员很多,而且没有嵌入式应用程序的控制台,所以很难为每个成员调用sizeof()
。
最佳答案
检查链接器生成内存映射文件。大多数情况下它将是“.map 扩展名”。
在许多 IDE 中默认禁用,并且由于此链接器不会生成此文件,在这种情况下您必须从项目设置中启用它。
关于c++ - 内存使用检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38181808/