【转】Symbian内存管理的二十二条军规

news/2024/7/20 13:18:44 标签: 内存管理
1、C类必须有析构函数,这是CBase的一个虚函数。
2、C类的构造函数和ConstructL()必须为protect或private类型的成员函数
 
3、在C class中必须有一个NewLC()函数,除非它是嵌套类。NewL()是可选的,并且总是根据NewLC()来实现。
 
4、NewL()和NewLC()在c class中必须是static函数。 
 
5、C类通过指针和引用来传递。
 
6、拷贝构造函数在symbian中没有用。
 
7、不一定要在析构函数中删除类的成员对象。(生命期结束即可删除)
 
8、析构函数中必须对对象进行if检查。即 if(iObject) delete iObject;iObject = NULL;
 
9、R类没有明确的构造、析构或拷贝构造函数以及赋值操作。
 
10、delete a;a=NULL;a=b;标准重新分配过程。
 
11、任何可能导致异常退出的函数皆加L后缀。
 
12、不要删除非拥有对象(也就是,那些仅仅只使用的对象)
 
13、分配动态数组前定义一个合适粒度。
 
14、把new换成new(ELeave).
 
15、if(函数不能异常退出&&要自己处理错误时)使用TRAP&&不要过多嵌套。
 
16、if(aObject被一个自动变量指针引用&&将进行一个可能在aObject生存期内Leave的操作)CleanupStack:PushL(aObject);
 
17、决不能把一个i前缀的成员变量PushL入清理栈。
 
18、构造函数决不能Leave,把可能异常退出的语句放到ConstructL()中去。
 
19、Symbian的默认栈容量为8k,小心使用递归。
 
20、TBuf的长度最好不超16,必要的情况下用HBufC代替TBuf.
 
21、使用__UHEAP_MAEK 宏来检测你的内存状况。
 
22、尽可能早的删除一切失去使用价值的东西,不要等到函数尾部(自动变量)或在析构函数中才删除(成员变量)。

转载于:https://www.cnblogs.com/phcis/archive/2008/02/26/1081713.html


http://www.niftyadmin.cn/n/1683836.html

相关文章

【原创】oracle中大数据量join操作的试验

通过关联订购关系这个操作做了一个关于join操作的试验。 以前采用上下行表直接关联,2个表数据量大约是2200w左右和1400w左右,并且2个表都是属于宽表,字段内容多,占用空间大,但join的时候用到的字段很少(2个…

P1003 [NOIP2011 提高组] 铺地毯https://www.luogu.com.cn/

P1003 [NOIP2011 提高组] 铺地毯 提交268.03k 通过92.73k 时间限制1.00s 内存限制125.00MB 提交答案加入题单 题目提供者CCF_NOI 难度普及- 历史分数100 提交记录 查看题解 标签 NOIp 提高组2011 查看算法标签 进入讨论版 相关讨论 查看讨论 推荐题目 查看推荐 洛…

DW(初始化扩展数据)的时候就进不了

今天工作头一天DW就出现错误,吓了一跳,怎么试也不行,还好有得上网找。呼。。。。症状表现:DW在启动画面到Initalizing extentions data (初始化扩展数据)的时候,就会停在那里,CPU占用…

VS2005 VS2008新建网站和新建项目里选Web应用程序区别 [ZT]

WebApplication编程模型的优点:●网站编译速度快,使用了增量编译模式,仅仅只有文件被修改后,这部分才会被增量编译进去。●生成的程序集WebSite:生成随机的程序集名,需要通过插件WebDeployment才可以生成单…

顽皮的孩子

从前有一位老诗人——一位非常和善的老诗人。有一天晚上,他坐在家里,外面起了一阵可怕的风暴。雨在倾盆地下着;不过这位老诗人坐在炉旁,又温暖,又舒适。  火在熊熊地燎着,苹果烤得咝咝地发响。  “这样…

幸福的家庭

这个国家里最大的绿叶子,无疑要算是牛蒡的叶子了。你拿一片放在你的肚皮上,那么它就像一条围裙。如果你把它放在头上,那么在雨天里它就可以当做一把伞用,因为它是出奇的宽大。牛蒡从来不单独地生长;不,凡是…

系统集成的“后战国时代”--中小集成商生存调查

2007年,国内的中小集成商活得并不容易,虽然市场容量在扩大,但利润却在进一步降低。与此同时,大型项目越来越少,取而代之的是数量众多但极其分散的中小企业项目增多,可以说,复杂度开始变强&#…

才子软件,专注于中小型企业管理软件开发

才子软件,专注于中小型企业管理软件开发 “才子进销存”新一代真正基于互联网(Internet)的进销存分销管理软件 才子进销存官方网站:[url]http://www.cz-soft.net[/url] 华军软件园下载链接: 才子进销存…