嘿所以我试图将哈希表作为参数传递给c ++,当我调用我试图运行的函数时,我得到一条我不理解的错误信息。
所以这就是功能:
string getRandomKey(int tableNumber, int tableSize, HashTable<string>* table, int random){
random *= rand() % tableSize + 1;
string randKey = to_string(tableNumber) + to_string(random);
if((table->find(randKey)) == true){
cout << "Key: " << randKey << " found ";
return randKey;
}
return "";
}
这绝不是我试图测试它的最终版本。一些上下文是我有几个哈希表,以及一个单独的整数变量,它具有我预先确定的元素数。密钥设置为随机数之一。
无论如何所以我在这里称之为函数:
table1->print(getRandomkey(1, sizes[2], table1*, 1));
我收到了这个错误:
error: expected expression
table1->print(getRandomKey(1, sizes[2], table1*, 1));
^
1 error generated.
所以,我不确定我需要改变什么,或者我是否在其他地方搞砸了什么。感谢你们给予的任何帮助!
答案 0 :(得分:1)
看来table1是一个指向HashTable的指针,所以当你 调用getRandomKey术语table1 *应该只是table1。
table1-&gt; print(getRandomkey(1,sizes [2],table1,1));