对于我的任务,我必须创建一个哈希表,并且我设法编写了大部分哈希表,直到我意识到我在头文件中声明了一个静态数组。哈希表假设实现一个动态分配的数组,我想知道这个数组将在何处创建?我会把它放在我的头文件中还是把它放在我的构造函数中。如果我在构造函数中创建它,我的其他成员函数将如何访问和修改数组,因为它在我的构造函数的范围内。谢谢
Item* ptr = new Item[bucketcount];
答案 0 :(得分:2)
我无法完全理解您的问题,但如果您的问题是“范围”问题,您可以通过将您的数组声明为HashTable类的成员来解决它:
HashTable.cpp
class HashTable
{
private:
Item* items;
public:
HashTable()
{
items = new Item[size];
}
~HashTable()
{
delete[] items;
}
};
作为成员,它将从您的HashTable类的每个方法中可见。