Symbian中的动态集合Rarray的使用
来源:互联网 发布:网络言论自由 编辑:程序博客网 时间:2024/05/17 23:56
有C++经验的人,刚开始写sybmian程序,往往觉得sybmian的数据结构都比较奇怪,比如描述符,比如动态数组,另外很有用的一些C++的数据结构,比如map之类的都没提供,通用的STL类型也没法在symbian中使用。
但实际上Rarray是一个设计的很有意思的类,它提供了InsertInOrder、FindInOrder两个函数,分别可以按照排序方式插入记录和快速查找功能。这两个函数,都使用了一个TLinearOrder<T> anOrder结构。而TLinearOrder<T>提供一个
但实际上Rarray是一个设计的很有意思的类,它提供了InsertInOrder、FindInOrder两个函数,分别可以按照排序方式插入记录和快速查找功能。这两个函数,都使用了一个TLinearOrder<T> anOrder结构。而TLinearOrder<T>提供一个
TLinearOrder(TInt(*anOrder)(const T&,const T&));构造函数,这个构造函数的参数是一个函数指针,指向一个比较大小的函数。
struct TIndex
{
TUint index;
TBuf8<10> key;
};
// 比较函数
TInt CompareKey (const struct
TIndex
& First, const struct
TIndex
& Second)
{
return First.key.Compare(Second.key);
}
TLinearOrder<struct TIndex> anOrder(
CompareKey
);
RPointerArray<struct TIndex> IndexTest;
// 插入记录
struct TIndex*
pIndexText = new (ELeave)
TIndex
;
pIndexText->index = 0;
pIndexText->
key.Copy(_LIT8("test"));
IndexTest
.InsertInOrder(pIndexText,
anOrder
);
// 查找记录
TInt Pos = 0;
struct
TIndex
Finder;
Finder.
index = 100;
Finder
.key.Copy(_LIT8("test"));
if((Pos=
IndexTest
.FindInOrder(&Finder,
anOrder
)) != KErrNotFound)
{
// 找到了对应内容, 处理...
}
- Symbian中的动态集合Rarray的使用
- Symbian中的动态集合CArray的使用
- Symbian中的动态集合CArray的使用
- Symbian OS中的RArray类的排序功能
- Symbian OS中的RArray类的排序功能
- Symbian OS中的RArray类的排序功能
- Symbian编程-集合与缓冲区(1)-RArray和RPointerArray
- RArray Sort Find等函数的使用
- Symbian编程-集合与缓冲区(2)-验证RArray::Append是否保存对象副本
- Symbian编程总结-基础篇-集合与缓冲区(1)-RArray和RPointerArray
- Symbian编程总结-基础篇-集合与缓冲区(1)-RArray和RPointerArray-转贴
- Symbian编程总结-基础篇-集合与缓冲区(1)-RArray和RPointerArray
- Symbian基础总结 -- RArray和RPointerArray
- Symbian基础总结 -- RArray和RPointerArray
- Symbian OS - RArray和RPointerArray类型
- symbian中动态数组CArrayX的使用
- RArray
- Symbian OS中的活动对象的使用
- 原创兔子GIF图图之一
- 《JavaScript高级程序设计》学习笔记(继承)
- log4j指南
- 《JavaScript高级程序设计》学习笔记(表单和数据完整性)
- 解决AJAX从前台传递到后台在LINUX下出现乱码
- Symbian中的动态集合Rarray的使用
- javascript中iframe里面的页面调用父窗口js函数的方法。
- 如何提升文档编写能力
- 创业教父马云的经典语录
- VC编程规范
- 使用Dojo实现页面不刷新提交数据
- SysLoad3.exe木马病毒地分析及清除方法
- 挑水与挖井
- 本地化测试错误特征分析与测试方法