How to remove every node of the list.
I came up with this code but I come up with an unhandled windows32 exception upon runtime.
Code:
template <class T>
bool CList<T>::remove(){
if(this->isempty()){
return false;
}
else if(!this->isempty()&&curr_){
Node<T> *prev_;
Node<T> *next_;
if(curr_->next_==curr_&&curr_->prev_==curr_){
delete curr_;
curr_ = NULL;
}
else{
prev_ = curr_->prev_;
next_ = curr_->next_;
delete curr_;
prev_->next_ = next_;
next_->prev_ = prev_;
curr_ = next_;
return true;
}
}
else return false;
}
It deletes the node pointed at by curr_