Symbian OS使用的是面向对象的C++,但是又和标准的C++有一些区别。比如Symbian OS没有标准的异常处理(Exception),因为设计Symbian OS的时候还C++还没有把异常处理标准化。所以Symbian设计了自己得异常处理机制: TRAP, leave。另外就是今天要讲的基本类型。Symbian 基本上不使用任何标准的C++基本类型,众所周知,不同的C++编辑器对int, unsigned int的长度理解不同,所以Symbian OS中使用 TInt8,TInt16,TInt32。
但是,如果你么没有很好的理由使用某一特定的长度时,应该使用Tint。其他很多类型也遵守这个原则。比如以后要讲的TBuf8, TBuf16可最好用为TBuf。
类 型 | 描 述 |
TInt8, TUint8 | 8 位 整数 |
TInt16, TUint16 | 16 位 整数 |
TInt32, TUint32 | 32位 整数 |
TInt, TUint | (32位)整数 |
TReal32, TReal64 | 实数 |
TText8, TText16 | 字符,相当于 unsigned char, unsigned short int |
TBool | 布尔 |
TAny | 相当于void |
代码规范
Symbian OS 使用很多代码规范,使用他们可以增强Symbain 代码的可读性,有些规范甚至是需要严格遵守的,比如类的命名:
种 类 | 例 子 | 描 述 |
T classes | TDesC, TPoint | 这个类可以向基本类型一样使用,因为他们通常很小,而且不使用heap所以也没有析构函数 |
C classes | CConsoleBase, CActive | 这个类是Symbian使用最多的类,C代表他们从CBase类继承而来,他们必须有析构函数因为他们的对象创建在heap中 |
R classes | RFile, RTimer | R代表资源(Resource),它们只是一个系统资源的句柄,他们本身被创建在Stack上,但是他们所使用的资源被创建在heap上,使用完毕需要Close() |
M classes | MEikMenuObserver | 这个类是一个空的接口,使用的时候需要从它继承 |
static classes | User, Math | 这个类只有静态函数,一般都是库函数 |
Structs | SEikControlInfo | c - struct |
变量命名
种 类 | 例 子 | 描 述 |
枚举 | EMonday,ETuesday | E 代表枚举 |
定量 | KMaxFileName | K 代表定量 |
成员变量 | iDevice, iX | i 代表成员变量 |
参数 | aDevice, aX | a 代表参数 |
局部变量 | device, x | 局部变量没有固定的规范 |
另外还用函数的命名,但是要讲过leave的概念后才可以理解,所以这里先不介绍。这一课很枯燥,但是理清了一些概念,下一课我们来仔细的看一下图形界面的Helloworld。
时间: 2024-11-01 21:13:06