ошибка: квалифицированное имя относится к специализации переменной шаблона - PullRequest
1 голос
/ 15 апреля 2020

В настоящее время я пытаюсь создать шаблон таблицы Ha sh и затем адаптировать класс сервера паролей поверх него. Я столкнулся с проблемой при попытке адаптировать класс сервера паролей к шаблону таблицы ha sh. Когда я пытаюсь вызвать функцию из шаблона:

PassServer::PassServer(size_t size) : passwords(size)
{
    HashTable<std::string, std::string>::HashTable(size);
}

, она постоянно выдает мне сообщение «Квалифицированное имя относится к специализации переменного шаблона« HashTable »», и я понятия не имею, как это решить. Я добавил специализацию для конструктора, но она, похоже, ничего не меняет. Это конструктор, который я пытаюсь адаптировать:

template <typename K, typename V>
HashTable<K, V>::HashTable(size_t size = 101)
{
    theHash.resize(prime_below(size));
    currentSize = 0;
}

с помощью специализированного конструктора:

template<>
HashTable<std::string, std::string>::HashTable(size_t size = 101)
{
    theHash.resize(prime_below(size));
    currentSize = 0;
}

, но все равно выдает ту же ошибку

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...