引自:http://oldblog.blogchina.com/article_31916.113989.html
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。
SymbianOS编程基础
本文介绍了SymbianOS中的基本类型定义及其代码规范。详细解释了特定类型的用途,如TInt8、TInt32等,并概述了类命名规则,如Tclasses、Cclasses等。
1451

被折叠的 条评论
为什么被折叠?



