Symbian OS 类命名规则之 基本类型和T类
2010-03-22 16:27:00 来源:WEB开发网核心提示:a"关系的指针或引用,而不能是"has a"关系,Symbian OS 类命名规则之 基本类型和T类(2),例如TPtrC,T类中包含所有它的成员,T类像C风格的结构体,只有public数据和方法,而不能有指向它拥有对象的指针,引用或句柄
a"关系的指针或引用,而不能是"has a"关系,例如TPtrC。
T类中包含所有它的成员,而不能有指向它拥有对象的指针,引用或句柄。这一切都是因为T类没有构造函数。
T类的对象可以在栈上创建,并且在生命周期结束时可以被正确的释放。如果一个T类拥有一个析构函数,那么 Symbian OS在一个leave事件中并不会调用它,因为leave没有模仿标准C++的throw语法。如果为了正确释放资源而必须调用析构函数,那么该类只能在栈上实例化。
T类可以在堆上创建对象,这样的对象需要加入到cleanup栈中以便leave时能够释放资源。在leave时,清理栈可以帮助释放内存但是不调用析构函数。
T类经常没有定义默认构造函数;如果一个T类只有内置类型的成员,构造函数可以防止项下面这样初始化成员 TMyPODClass local = { 2000, 2001, 2003 };
T类很少有虚函数。由于T类只有内置类型的成员,所以没有必要定义拷贝函数和赋值操作符,编译器生成的就已经足够了,当然,如果你要避免克隆,需要把两者声明为私有。
一个T类有着相当复杂的API,比如 TLex,用作词汇分析;描述符的基类TDesC和TDes。除此之外,T类像C风格的结构体,只有public数据和方法。
枚举类型也以'T' 为前缀,比如enum TMonthOfYear { EJan = 1, EFeb, ..., EDes };
更多精彩
赞助商链接