关键技术:vector容器
代码:
#include <iostream>
#include <vector>
#include <string>
using namespace std;
typedef struct __Record{
string key;
string value;
}Record;
class Dic{
public:
bool insert(string,string);
bool del(string);
bool has_key(string);
string get(string);
int size();
void clear();
private:
vector<Record> vec_0;
};
bool Dic::insert(string key,string value){
Record rec;
if(has_key(key)){
cout<<"Error!Duplicate key!Insert failed!"<<endl;
return false;
}
rec.key = key;
rec.value = value;
vec_0.push_back(rec);
return true;
}
bool Dic::del(string key){
if(!has_key(key)){
cout<<"Error!No such key!Delete failed!"<<endl;
return false;
}
for(vector<Record>::iterator it = vec_0.begin(); it != vec_0.end();){
if(!it->key.compare(key)){
it = vec_0.erase(it);
}else{
it++;
}
}