В своем коде вы устанавливаете key
и value
только один раз в начале, используя i
, который, поскольку он не был инициализирован, имеет неопределенное значение. Вам нужно получить элементы каждая итерация, используя правильное значение i
.
void hashTable::print() {
cout << "-------hash table-------" << endl;
cout << "index key value" << endl;
for(int i = 0; i < length; i++) {
MyString key = data[i].getKey();
int value = data[i].getValue();
cout << " " << i;
cout << " " << key;
cout << " " << value;
}
cout << endl;
}
Не уверен, что это полностью решит вашу проблему, но, тем не менее, это поможет.