2009-05-09 17:30
Symbian系統不直接支持靜態變量。但可以通過以下兩種方法來利用靜態變量的功能。
1。將變量放入全局總控類(如AppUi)中,保證其唯一。
2. 使用CCoeStatic的派生類。
class CHtmlCtlEnv : public CCoeStatic
{
public:
static CHtmlCtlEnv* Static();
CHtmlCtlEnv();
}
#define KHtmlCtlEnvUid TUid::Uid(0x080F046C)
CHtmlCtlEnv* CHtmlCtlEnv::Static()
{
CHtmlCtlEnv* instance = static_cast<CHtmlCtlEnv*> ( CCoeEnv::Static( KHtmlCtlEnvUid ) );
if ( !instance )
{
instance = new ( ELeave ) CHtmlCtlEnv;
instance->ConstructL();
}
return instance;
}
CHtmlCtlEnv::CHtmlCtlEnv() : CCoeStatic(KHtmlCtlEnvUid, -1)
{
}