WEB开发网
开发学院手机开发Symbian 开发 Symbian开发中描述符的使用 阅读

Symbian开发中描述符的使用

 2010-05-31 20:05:00 来源:WEB开发网   
核心提示:// 改变HbufC的指向_LIT ( KText1 , "Text1");//使用赋值运算符来改变指向KText1的缓冲区*Buf1 = KText1;// 下面通过可修改的指针描述符来改变 数据TPtr Pointer = Buf1- >Des();Pointer.Delete( Poin

// 改变HbufC的指向

_LIT ( KText1 , "Text1");

//使用赋值运算符来改变指向KText1的缓冲区

*Buf1 = KText1;

// 下面通过可修改的指针描述符来改变 数据

TPtr Pointer = Buf1- >Des();

Pointer.Delete( Pointer.Length() - 2, 2 );

// 所有能对 TBufC< n > 进行的操作在些都可用

//下面是一个这样的操作

_LIT ( KNew, "New:");

Pointer.Append( KNew );

TPtrC< n >

让我们先记住如何创建TPtr。

·用另一个TPtr。

·从TBufC< N >,或者通过成员函数Des()使用HbufC来创建。

·从一个指向内存的外部指针并指定最大长度。

·从一个指向内存的外部指针并指定数据及其最大长度。

LIT(KText, "Test Data");

TBufC< 10 > NBuf ( KText );

TPtr Pointer = NBuf.Des();

//第一种方法

TPtr Pointer2 ( Pointer );

// 现在我们看一下,怎么用TPtr 替换数据,这完全可以通过

//赋值运算符或拷贝函数来实现

_LIT(K1, "Text1");

_LIT(K2, "Text2");

Pointer2 = K1; // 数据是Text1

Pointer.Copy(K2); // 数据是Text2;

// 我们还可以改变数据的长度或把它设置为0

Pointer2.SetLength(2); // 只剩下 Te两个字符

Pointer2.Zero(); // 把长度设置为0

//可以使用delete 函数来更改数据,如前面的例中所示

1、const TDesC& 表示只读的数据和字符串。

2、TDes& 表示可以被修改的数据和字符串。

函数方法小结

1、描述符都有的方法:

TInt Locate(TChar aChar) const; 定位指定字符的位置;

TInt Compare(const TDesC16& aDes) const; 按字节比较两个描述符大小

TInt Match(const TDesC16& aDes) const 搜索指定描述符的位置,可使用? *等通配符

TInt Find(const TDesC16& aDes) const; 搜索指定描述符在当前描述符中第一次出现的位置

TPtrC16 Left(TInt aLength) const 提取描述符最左边的数据

TPtrC16 Right(TInt aLength) const 提取描述符最右边的数据

上一页  1 2 3 4 5  下一页

Tags:Symbian 开发 描述

编辑录入:coldstar [复制链接] [打 印]
赞助商链接