(注意:我用 Pascal 编码)
在类的创建者中TQuest
,我使用作为参数给出的 pSDL_Surface 初始化一些对象,如下所示:
quests.Add( CPopuQuest.create('Get money ! ','Get more than $10,000', IMG_LOAD(MONEY_ICON), 1000, 10) );
(有趣的部分是IMG_LOAD(MONEY_ICON)
MONEY_ICON 是图像的路径。
当我结束我的程序时,我在这一行的这个 CPopuQuest 对象的析构函数中得到一个错误:
if badge<>nil then SDL_FreeSurface(badge)
(徽章是复制由 IMG_LOAD(MONEY_ICON) 实例化的 pSDL_Surface 的属性)
它在大多数情况下都可以工作,但是有时我在关闭程序时仍然会出错...如果有人可以提供帮助:)(如您所见,我对 IMG_LOAD 的工作方式,返回的内容和调用时如何分配内存)。