#include <hash_map>
#include <cstring>
#include <iostream.h>
using namespace std;
//define the class
struct eqstr {
bool operator()(const char* s1,const char* s2)
{
return strcmp(s1,s2)==0;
}
};
struct myhash {
size_t operator()(const char* str)const
{
unsigned long __h = 0;
for (size_t i = 0 ; i < strlen(str) ; i ++)
__h = 5*__h + str[i];
return size_t(__h);
}
};
int main()
{
hash_map<const char*,int,myhash,eqstr> days;
days["january"]=31;
days["february"]=28;
days["march"]=31;
cout<<days["january"]<<endl;
cout<<days["february"]<<endl;
cout<<days["march"]<<endl;
return 0;
}
联系客服