私のメインメソッドでは、次のコードに挿入を含む行でエラーがあります。
hashTable<string, pair<string, string>> friendsHash = hashTable<string, pair<string, string>>(friendTotal);
if(critChoice == 1)
{
for(int counter = 0; counter < friendTotal; counter ++)
{
string name = friends[counter].getName();
string date = friends[counter].getBirthDate();
string homeTown = friends[counter].getHomeTown();
friendsHash.insert(pair<name, pair<date, homeTown>>);
}
}
hashMapの挿入関数は次のとおりです。
template<class K, class E>
void hashTable<K, E>::insert(const pair<const K, E>& thePair)
{
int b = search(thePair.first);
//check if matching element found
if(table[b] == NULL)
{
//no matching element and table not full
table[b] = new pair<const K, E> (thePair);
dSize ++;
}
else
{//check if duplicate or table full
if(table[b]->first == thePair.first)
{//duplicate, change table[b]->second
table[b]->second = thePair.second;
}
else //table is full
throw hashTableFull();
}
}
エラーは、挿入関数の3つの引数のそれぞれが呼び出すことですis not a valid template type argument for parameter