C ++模板类中没有可用的成员

时间:2013-11-22 00:12:37

标签: c++

我正在尝试实现哈希表类,但是当我尝试访问Hash_Table类中的STL列表成员函数和迭代器时,visual studio说没有可用的成员。这是我的代码:

#include <iostream>
#include <vector>
#include <string>
#include <list>
#define INIT_SIZE 11

using namespace std;

template<typename KEY_TYPE, typename VALUE_TYPE>
class Hash_Table
{
public:
typedef pair<const KEY_TYPE, VALUE_TYPE> Entry_Type;

// Constructor 
Hash_Table(const int size = INIT_SIZE)
{
    myTable.resize(size);
}

// HashCode() function for calculating hash code of a specified key;
int HashCode(const KEY_TYPE& key)
{
    int index = hash<KEY_TYPE>(key) % myTable.size();

    return index; 
}

void Insert (const Entry_Type& value)
{

}

// Index operator
Entry_Type& operator [] (const KEY_TYPE& key)
{
    typename list<Entry_Type>::     ;//no members available
            myTable[0].                    ; //no members available
}

void Rehash ();

private:
// the table
vector<list<Entry_Type>> myTable; 
};

谁能告诉我为什么会这样?非常感谢你!

0 个答案:

没有答案