×
Namespaces

Variants
Actions

使用TCleanupItem

From Nokia Developer Wiki
Jump to: navigation, search
Article Metadata

文章
hoolee 在 10 Jun 2008 创建
最后由 hamishwillee 在 15 Dec 2011 编辑

CS000985


  • 开发伙伴平台:

S60 3rd Edition, MR


  • 详细描述

下列代码片段为RImageTypeDescriptionArray指定了一个自定义的清除方法。这样可以简单的通过在方法中调用CleanupStack::PopAndDestroy()作用于数组,或者任何需要清除的地方。


在这里,我们为了要释放数组创建的资源,要调用ResetAndDestroy()方法。一般来说,生成一个自定义的清除方法要比直接删除对象更加安全精密。比如,删除一个共享资源时。


MMP文件

需要下列能力和库

CAPABILITY    None
LIBRARY imageconversion.lib


头文件

#include <imageconversion.h>


源文件

void CleanupRArray( TAny* object )
{
((RImageTypeDescriptionArray*)object)->ResetAndDestroy();
}
 
RImageTypeDescriptionArray imageTypes;
 
// Create a custom cleanup item and specify CleanupRArray to be the
// method that is called once CleanupStack::PopAndDestroy() is called
CleanupStack::PushL( TCleanupItem(CleanupRArray, &imageTypes) );
 
// Here is some code that can leave
// ...
 
// This will lead to a call to CleanupRArray, the custom cleanup method.
CleanupStack::PopAndDestroy(&imageTypes);
This page was last modified on 15 December 2011, at 09:39.
30 page views in the last 30 days.
×