这是我在C ++中使用OpenGL进行图形处理和SDL处理的第一个“游戏”。我的代码似乎工作,因为我能够创建一个功能的应用程序窗口,并使用Devil Texture库完全加载和绘制纹理。问题出现在运行时。根据Windows任务管理器的说法,我的内存使用量从大约13,900开始,但在4分钟左右后稳定增长到大约15,000,然后停止。这是正常的吗? Windows任务管理器是不正确的查看内存的方式吗?
答案 0 :(得分:2)
代码中可能存在一些内存泄漏,即非释放指针......等等......
在Linux上,我会使用Valgrind在运行时检查它。我不确定Windows的等价物是什么。这个post应该指出你找到一个等效工具的正确方向
干杯
答案 1 :(得分:1)
如果你在应用程序的执行过程中进行动态内存分配和释放,可能就是你正在分割内存而只需要那么多来处理碎片周围的所有“污点”。
我之前使用过http://www.fluidstudios.com/的MMGR包来跟踪我的内存使用情况。基本上它允许您转储程序中所有分配的重要信息,因此您可以逐帧跟踪以查看正在发生的事情。
祝你好运。