malloc:***对象0x10020a2c0的错误:没有分配被释放的指针***在malloc_error_break中设置一个断点来调试

时间:2018-03-17 07:48:07

标签: c++ xcode

我的其余程序工作正常,除非我尝试在main中使用+ =运算符时,它会抛出一个错误。分配4(1643,0x10013c3c0)malloc: *对象0x10020a2c0的错误:指针正在释放没有分配 * 在malloc_error_break中设置断点以进行调试。  任何帮助如何解决它将不胜感激。 这是我的+ =函数的定义:

Student Student::operator+=(string item){
CheckOut(item);  //checkout is a member function of the class Student
return *this;

}

这是xcode编译器在说thread1:signal SIGABRT时指出错误的地方。我不知道这个错误意味着什么。

Student::~Student(){
delete [] pointer; //it points error right here
pointer = NULL;

}

1 个答案:

答案 0 :(得分:0)

您的操作员功能应该返回对学生的参考:

学生&安培; Student :: operator + =(字符串项){ 退房(项); // checkout是Student返回* this的成员函数; }