gpt4 book ai didi

c++ - 尝试破坏我的链接列表时出错?

转载 作者:行者123 更新时间:2023-11-28 08:02:42 26 4
gpt4 key购买 nike

我正在尝试为 Iv 创建的链表对象实现析构函数。我创建了一个名为 MakeEmpty 的函数,我只是在析构函数中调用它。它第一次编译正确,但现在,我立即崩溃并显示错误消息:

表达式:_BLOCK_TYPE_IS_VALID(pHead->nBlockUse)

谁能帮我弄清楚哪里出了问题?我运行了调试器并指出了代码中的错误所在,但我无法弄清楚哪里出了问题。

WORD::~WORD()
{
cout << "Destructor Called"<<endl;

(*this).MakeEmpty();
}

这是 MakeEmpty() 函数

void WORD::MakeEmpty()
{
alpha_numeric *p = (*this).front;

if((*this).IsEmpty())
{
cout <<"Already empty"<< endl;
return;
}

while(front != 0)
{
front = front -> next;
delete p;//<<<<---DEBUGGER SAYS ERROR HERE
p = front;
}
return;
}

最佳答案

你遵守rule of three了吗?在你的类(class)?该错误听起来像是您缺少复制构造函数或复制赋值运算符。

关于c++ - 尝试破坏我的链接列表时出错?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10974332/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com