我正在尝试将 C++ 字符串转换为 cstring 或 char*。我希望始终调用带有 char* 的哈希函数(从字符串转换后)。我一直在看这个代码一个小时,也在搜索。没运气。
char* a = "foo";
string b = "foo";
hash(a, 1); // calls the char* hash
hash(b, 1); // calls string hash
int hash(string key, int i){//STRING HASH
char const* cstring = key.c_str();
return hash(cstring, i);//should not be a recursive call but is
}
int hash(char* key, int i){//Cstring HASH
//should get called here
return hash(intKey, i);
}
我希望这足够清楚。这是一个漫长的一天!:-p
有趣的是 char* a 和 char const* a 从 main 调用 char* 方法,而不是从 string 方法调用。有趣的。