TComplexHash(ulong hashSize,MemPool *pMemPool=0)
| 原型 | TComplexHash(ulong hashSize,MemPool *pMemPool=0) |
| 描述 | 构造TComplexHash对象 |
| 参数 | [i]ulong hashSize: 期望的hash的节点规模,取值范围下限大于0,上限取决于内存空间大小。hashSize决定了m_ulModNumber的值(比m_ulHashSize/2大的质数) [i]MemPool * pMemPool = 0: 从外部指定用于分配节点空间的内存池,默认为不从外部指定,即为NULL |
| 返回值 | 无 |
bool insert(T * pData)
| 原型 | bool insert(T * pData) |
| 描述 | 将数据pData插入到TComplexHash中 |
| 参数 | [i]T *pData: 插入的数据 |
| 返回值 | 若插入成功则返回true,若插入失败或者数据已在hash中返回false |
void remove(T * pData)
| 原型 | void remove(T * pData) |
| 描述 | 将数据T从TComplexHash中删除 |
| 参数 | [i]T * pData: 需要删除的数据,该指针并不一定是TComplexHash中的数据,但是它必须保证数据标识和辅助数据与删除目标一致。 |
| 返回值 | 无 |
void clear()
| 原型 | void clear() |
| 描述 | 重置基本索引表为空白状态,释放由内存池分配的节点空间,如果内存池是自行创建,重置内存池 |
| 参数 | 无 |
| 返回值 | 无 |
T * getData(T *pData)
| 原型 | T * getData(T *pData) |
| 描述 | 在TComplexHash中获取与数据T一致1)的原始数据 |
| 参数 | [i]T *pData: 需要检索的参考数据,与目标数据一致 |
| 返回值 | 若TComplexHash中有匹配的数据,则返回数据的地址,否则返回NULL |
ulong getCount()
| 原型 | ulong getCount() |
| 描述 | 获取节点总数 |
| 参数 | 无 |
| 返回值 | 节点总数 |
ulong getSize()
| 原型 | ulong getSize() |
| 描述 | 获取TComplexHash表的大小 |
| 参数 | 无 |
| 返回值 | TComplexHash基本索引表的长度 |
void setIterator(Iterator * pIter)
| 原型 | void setIterator(Iterator * pIter) |
| 描述 | 绑定遍历迭代器 |
| 参数 | [i]Iterator * pIter:遍历迭代器的指针,该指针必须有效 |
| 返回值 | 无 |