WEB开发网
开发学院手机开发Symbian 开发 symbian 开发实践总结大全 阅读

symbian 开发实践总结大全

 2010-05-31 19:58:00 来源:WEB开发网   
核心提示:readStream.OpenLC(tblHist, KIndData);readStream.ReadL(des, nLen);CleanupStack::PopAndDestroy(); //readStream49. DLL中加载资源//加入资源文件TFileName filename;TParse parse;

readStream.OpenLC(tblHist, KIndData);

readStream.ReadL(des, nLen);

CleanupStack::PopAndDestroy(); //readStream

49. DLL中加载资源

//加入资源文件

TFileName filename;

TParse parse;

parse.Set( CEikonEnv::Static()->EikAppUi()->Application()->AppFullName(), NULL, NULL);

filename.Copy( parse.Drive() );

filename.Append(KResPath);

iResOffset = iEikonEnv->AddResourceFileL(filename);

50. 使用While+错误标志位+全局变量 可以解决某些递归调用。

51. XmlLib 在 xmlframework.lib

使用Xml::MContentHandler时应该这样处理:

-> 叶节点标签在Oncontent中处理。

-> 其他节点在OnEndElementL中处理

-> 使用如下的跳转表:

struct TKeyWordPair

{

const TPtrC8 tag;

TInt iType;

TInt iParentType;

};

在OnStartElementL中:

for (TInt i=0; i<>

{

if (tagName.CompareC(KKeyWords[i].tag) == 0)

{

iState = KKeyWords[i].iType;

iParentSata = KKeyWords[i].iParentType;

break;

}

}

52. 换行符在symbian中为 (0x0C),读取windows文件时会自动转换。

XML解析时要跳过换行和空格。

53. 将KLit转化为TDesC:使用operator(),不会出现临时变量。

_LIT(KLit, "Hello world!");

KLit().AllocL();

54. 可以使用系统的KNullDesC(8,16)代替空字符串:

_LIT(KNullDesC, "");

55. iHeapBuffer = aDesC.AllocL();就可以搞定数据放入堆中。

56. CArrayPtr::ResetAndDestroy() 他的子类:CArrayPtrFlat,CArrayPtrSeg 都可以使用。

RPointerArray 也有此方法ResetAndDestroy()

57. 内存检测标记:

__UHEAP_MARK: 标记开始

__UHEAP_MARKEND: 标记结束

58. View模式: 次序有关,可以覆盖

上一页  2 3 4 5 6 7 8 9 10 11 12  下一页

Tags:symbian 开发 实践

编辑录入:coldstar [复制链接] [打 印]
赞助商链接