StorAge存储库

StorAge存储简介:

该文件下有两个目录

Source Code:源代码

Target FIle:目标文件(DLL,LIB)

该存储库使用模版方式实现,由于编译器不能很好的将模版类导出实现代码分割,所以只导出了LIB库,使用时可能报错,建议使用多文件编程的方式调用本库,因为模版函数需要调用时才会被编译,所以很多情况下会出现无法解析的符号!

使用方法:

List<int> ii;

Hash<char*> strii;

List类介绍:

//默认构造

List();

//长度构造

List(int Len);

//修改数据

STORAGE_FUNC_I Modify(int ArrIndex, T IutPut_Data);

//数据置0

STORAGE_FUNC_V DataMet();

//获取头索引

STORAGE_FUNC_I Hand();

//获取尾索引

STORAGE_FUNC_I End();

//获取中间索引

STORAGE_FUNC_I In();

//寻找数据

STORAGE_FUNC_BL SeekData(T SeekData);

STORAGE_FUNC_BL SeekDataToIndex(T SeekData);

//获取数据

T GetData(int ArrIndex);

//扩充增加

STORAGE_FUNC_I ExpanSion(int Len);

//动态变更

STORAGE_FUNC_I ExpanSionEx(int Len);

//Add增加

STORAGE_FUNC_I Add(T ADD_Data);

//获取大小

STORAGE_FUNC_I GetSize();

//重新增长

STORAGE_FUNC_V ReGrow(int Len);

//删除

STORAGE_FUNC_I Delete(int Len);

//删除指定位置上的数据

STORAGE_FUNC_I DeleteIndex(int Index);

//释放

STORAGE_FUNC_V Relete();

~List();

//关联式Id操作

//为段增加id

STORAGE_FUNC_I AddDataId(int Index, char *Id);

//通过ID找到段索引

STORAGE_FUNC_I GetIdToIndex(char* Id);

//通过ID获取数据

T GetIdToData(char* Id);

//删除关联Id,删除Id不会连同数据一并删除

STORAGE_FUNC_I DeleteId(char* Id);

//删除关联Id,同时删除数据

STORAGE_FUNC_I DeleteIdData(char* Id);

//获取索引关联的Id

STORAGE_FUNC_CP GetIdToIndex(int Index);

//运算符

//+

List & operator + (T AddData);

//-

List & operator - (int Len);

//[]

List & operator [] (int Len);

 

Hash类介绍:

哈希类不支持开放地址法

原因:

经过测试与分析,不建议使用开放地址法,为了避免不可因素的代码冲突将开放地址法删除!

如果有需要可以在我博客下载到开放地址法的哈希表代码!

//长度构造

Hash(int Len);

//初始化

STORAGE_FUNC_I InI();

//计算哈希

STORAGE_FUNC_I ComputeHash(char* Key);

//查找

STORAGE_FUNC_I LookupData(char* Key);

//压入

STORAGE_FUNC_I Input(char* Key, T Data);

//删除

STORAGE_FUNC_V Delete(char* Key);

//获取

T GetData(char* Key);

//修改

STORAGE_FUNC_I SetData(char* Key, T Data);

//获取大小

STORAGE_FUNC_I GetHashSize();

 

网盘下载:

链接: https://pan.baidu.com/s/1oQ7u3WJ1V62YxbUIrrHySQ

提取码: hddu 

 

github:https://github.com/beiszhihao/SDT/tree/master/StorAge

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

17岁boy想当攻城狮

感谢打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值