qq_gw_1
2017-10-14 20:40
我想问下为什么
bool list2::listdelet(int i, node *elem)
{
node *currentnode = m_pNode;
node *prenode = NULL;
if (i < 0 || i>m_length)
{
return false;
}
for (int count = 0; count < i; count++)
{
prenode = currentnode;
currentnode = currentnode->next;
}
prenode->next = currentnode->next;
elem->data = currentnode->data;
delete currentnode;
m_length--;
return true;
}
我delete currentNode的时候会报错:
currentnode与m_pNode都是指针,指向相同的地址,如果delete currentnode会将m_pNode的内存一并释放,m_pNode还在使用中所以报错。
数据结构探险之线性表篇
57563 学习 · 257 问题
相似问题