Когда я запускаю свою программу, я получаю сообщение Killed
с некоторой информацией о скрипте.Проведя некоторое исследование этой проблемы, я обнаружил, что не удаляю свои динамически размещенные переменные (глупо!).Тем не менее, теперь я чувствую, что позаботился об этой проблеме, но я все еще получаю сообщение Killed
в терминале, когда использую Linux.
//does the of the manipulation of the load factor.
for (int tableSize = fileLength; tableSize < fileLength * 2; tableSize = tableSize + 500)
{
//creates hash tables to be reused for each of the trials.
for(int fileNum = 0; fileNum < NUMTIMES; fileNum++)
{
Array_HashTable* linear_div_hash = new Array_HashTable(tableSize);
LinkedList_HashTable *chain_div_hash = new LinkedList_HashTable(tableSize);
Array_HashTable *doubleHash = new Array_HashTable(tableSize);
LinkedList_HashTable *mult_hash = new LinkedList_HashTable(tableSize);
//Does the hashing for each of the files created.
for (int index = 0; index < fileLength; index++)
{
linear_div_hash -> Linear_ProbeDH(read[fileNum][index]);
chain_div_hash -> Division_Hash(read[fileNum][index]);
doubleHash -> Double_Hash(read[fileNum][index]);
mult_hash -> Mulitplication_Hash(read[fileNum][index]);
}//ends the index for loop.
optimalOutput("VariableSizeLinearCollisionData", fileLength, tableSize, linear_div_hash -> getCollisions(), fileAppendage);
optimalOutput("VariableSizeDoubleCollisionData", fileLength, tableSize, doubleHash -> getCollisions(), fileAppendage);
optimalOutput("VariableSizeDivisionChainingCollisionData", fileLength, tableSize, chain_div_hash -> getCollisions(), fileAppendage);
optimalOutput("VariableSizeMultiplicationChainingCollisionData", fileLength, tableSize, mult_hash -> getCollisions(),fileAppendage);
linear_div_hash -> EndArray_HashTable();
chain_div_hash-> EndLinkedList_HashTable();
doubleHash -> EndArray_HashTable();
mult_hash-> EndLinkedList_HashTable();
delete linear_div_hash;
delete chain_div_hash ;
delete doubleHash ;
delete mult_hash ;
}//ends the fileNum for loop
}//ends the parent for loop with the size as the variable.
В основном код работает следующим образомцикл for управляет размером хеш-таблицы.Второй цикл определяет, какие данные файла будут использоваться для хеширования.И для этого создается объект хеш-таблицы.Последний цикл вызывает хеш-функции.Затем статистика выводится в файл с помощью функции вывода.Затем я использую функцию, аналогичную деструктору, чтобы удалить динамические переменные из моего класса.Я не могу использовать деструктор, чтобы сделать это, потому что он дал мне ошибки за это.Затем я удаляю объекты.
Что я могу сделать?