void erase(string key){
int idx=hashFn(key);
node<T>*temp=table[idx];
if(temp->key==key){
table[idx]=temp->next;
temp->next=NULL;
delete temp;
current_size--;
return;
}
while(temp!=NULL){
if(temp->next->key==key){
node<T>*ptr=temp->next;
temp->next=ptr->next;
ptr->next=NULL;
delete ptr;
return;
}
temp=temp->next;
}
}
in the first if statement why are we doing current_size-- .we have already assigned table[idx]=temp->next so why are we saying we need to decrease current_size by -1