デストラクタにセグメンテーション違反がありますが、その理由がよくわかりません。このコードは、Node 配列に格納され、衝突を避けるために連鎖されたキーと値のペアのマップ用です。
template<class V>
map<string, V>::~map()
{
for(unsigned int i = 0; i < SIZE; i++){
if(hashArray[i] != NULL){
Node* tmpNode = hashArray[i];
Node* currentNode = hashArray[i];
while(currentNode->next != NULL){
currentNode = currentNode->next;
delete tmpNode;
tmpNode = currentNode;
}
delete tmpNode;
}
}
delete [] hashArray;
}
デバッガーはこの行を指していますが、範囲外にはなっていないと確信しています。
while(currentNode->next != NULL){
必要に応じて、他のコードを提供できます。よろしくお願いします。:)