【聚杰网移动开发】使用Symbian OS字符串描述符编程
1. 简介
当我刚开始学习Symbian时,我遇到的第一件事情就是Symbian OS字符串的处理和使用问题。要学习Symbian字符串的使用,必须费一定脑筋才行。但是一旦你掌握了其中的要领,它就变得容易多了。
因此,下面我将解释我是怎样学习基本的Symbian OS字符串处理并对之加以记忆的。
注意,理解本文的前提是对Symbian操作系统的工作机理有一定了解。
2. 背景
你要做的第一件事情是记住字符串描述符层次结构图。这是很重要的,因为以后所有你要使用的五个描述符都派生于某些类,你必须了解它们分别是从哪些类派生的,以便确定应该使用哪些特别描述符及其使用场所。本文中我不准备解释什么是缓冲描述符及堆描述符的含义,以及可修改的描述符和不可修改的描述符是什么含义。但是,我相信你必须对上面的术语有足够的了解才行。Symbian描述符层次结构看起来相当绝妙。你可以参考下图,该图来源于newlc。
3. TPtrC<n>用法
其字面含义是"一个指向不可被操作的数据的指针"。关于TPtrC<n>,首先要记住,它不包含对自己的一些操作函数,而只含有构造器和设置方法。另外,既然它派生于TDesC,它就包含了TDesC的所有功能。
指针指向数据的方式有下面两种:
·先创建一个空的TPtrC<N>,然后用Set(...)函数把它指向一些数据。
·通过使用任何一个重载的构造函数,在构造过程中传递数据。
让我们通过下面几个例子来看一下上面的描述:
实例1:-从TBuf和TbufC中取得TPtrC:
实例2:-从TText*中取得TPtrC:
下面的实例使用了TText16:
实例3:-从另外一个TPtrC取得TPtrC:
你可以容易地把一个TPtrC赋值给另一个TPtrC。
实例4:-从TPtrC中取得TText *:
我们可以通过Ptr()成员使用来从TPtrC中取得TText *。




