我正在努力使用声明、创建和操作指向列表对象数组的指针所需的语法。我正在为课程作业创建一个哈希表模板类,使用链接来处理有冲突。
我的哈希表应该是一个list
对象数组。std::list
是我被允许用于分配的唯一标准库数据类,因此向量已失效。
我的问题是:如何声明一个指向 std::list 数组的指针?我有:
private:
std::list<T> * table;
如何创建数组?我有:
table = new std::list<T>[3]; // start with table size 3
我认为我有声明和构造的权利,但我不是 100% 确定。最后,我如何与列表交互?我有:
for (int i = 0; i < _tableSize; i++) { // _tableSize is the array's size
if (!table[0][i].empty()) {
table[0][i].push_back(thing);
}
}
table
不知何故, table[0][i] 访问指向的数组单元格似乎是错误的。它应该是什么样子?