Basic Types
在Symbian中,很多C++基本类型都被重新定义了
Integers
###这个!!!
typedef signed int TInt;
C++
中的signed int,32位,基本用法类似。
typedef unsigned int TUint;
一般用于计数器(Counter)或者标记(Flags)。
其他Int类型:TInt64, TInt32, TInt16,TInt8; 同时有一份TUint的版本。
Text
###这个c++里面没有
text
类型在Symbian编程中基本不用,而一般采用描述符(descriptor)。TText默认是16位的。
Boolean
typedef int TBool;
有两个枚举值:ETrue和EFalse。TBool变量最好不要直接和ETure和EFalse比较。如下:
TBool flag = ETrue;
if (flag) // if (!flag)
{
flag = EFalse;
}
if (flag) // if (!flag)
{
flag = EFalse;
}
Floating Point
对浮点数的支持视处理器而定,如果没有FPU,效率非常低,所以最好是不要用浮点数。如果一定要用,尽量转化为整数操作。
typedef float TReal32; typedef double TReal64; typedef double TReal;
TAny
typedef void TAny;
TAny
一般只用作指针,其他情况下用void比较好。
TAny* MyFunction(); void MyOtherFn();
TAny*
在很多Symbian API中都用到了,如:
static TUint8* Copy( TAny* aTrg, const TAny* aSrc, TInt aLength);
Enumerations
enum TState {EOff, Eon, EInit};
Enumeration
类型应该以T开头,而枚举值应该以E开头。
TState state = GetState();
if (state == EOn)
{
//Do something here
}
if (state == EOn)
{
//Do something here
}
读后感
Symbian
编程中基础的基础,属于每天都会碰到的东西有不少呀今天的数据类型就好多和c++不一样