关于命名规则:
Symbian的命名规则是为了程序员更容易理解程序代码! 当然也不排除许多人厌恶他的繁琐。 我们下来就大致的了解一下Symbian的命名规则:
<1>. 类的命名规则
在Symbian操作系统中,类名主要有三部分组成,其中包括有:<Symbian OS前缀>+<工程前缀>+<类的名称> 。Symbian OS 前缀主要有一下几种:
(a)“T”:T类没有析构函数。它可以作为一个自动变量、也可以作为一个某一个类的成员变量。它可以存放在堆里或者栈里。例如: TBuf、 TBufC。
(b)“C”:C类是必须从CBase继承下来的类。它只能并且默认的存放在堆里。当创建一个C类的对象,CBase类中new() 操作将其类中的所有的成员
变量初始化成0。C类还有一个析构函数,当调用delete操作符的时候,会正确的释放C类当初申请的所有空间。例如: CAknDialog,CAknEnv。
(c)“R” :R类是一种资源类。R类他有自己的资源。这些资源默认不是在堆里存放着;有少数情况也会放到堆里保存。R类他可以作为自动变量或着成
员变量;R类在释放资源的时候通常调用Close()函数。 例如: RTimer, RSocket。
(d)“M”:M类相当于java中的接口。M类中没有任何的成员变量,只是定义了一些纯虚函数,需要一个类实现这个M类 。 例如:MpbkFieldData。
(e)静态类: 不能被实例化的对象类,静态类中只包含静态成员函数;有一个明显的特点没有Symbian OS 前缀。 例如: user、 math.
<2>.函数的命名
函数的形参要以“a”做前缀;当一个函数或方法在执行过程中有可能出现内存泄漏时候,函数要以“L”结尾;当一个函数或方法在执行过程中将某个
或某几个变量压入清除栈中的时候,函数要以“C”结尾; 要注意的是:函数执行完成后要把压入清除栈中的变量弹出来。
<3>. 成员变量
以“i”作为成员变量的前缀。
当定义或声明一个引用或指针时候,将“&”或“*”符号与类型名相连, 不要和成员变量名相连。
<4>.常量
定义 “const” 类型的变量时候, 以“k”作为常量的前缀。
<5>. 枚举
枚举是一种类型,其名称前缀用“T”, 用“E”作为枚举成员的前缀。