CPPUTEST удаление памяти
У меня есть код, как показано ниже:
char* Add()
{
p = new char[10];
return p;
}
и я использую CPPUTEST с тестовым кодом, как показано ниже:
TEST(MyTestGroup, TestAdd_1)
{
p = Add(); // the above function
delete p;
}
Но ошибка такова: "Несоответствие типа распределения / освобождения"
Я не знаю почему, пожалуйста, помогите. Заранее спасибо!
1 ответ
Но ошибка такова: "Несоответствие типа распределения / освобождения"
Это потому, что вы выделяете массив, но освобождаете один объект.
TEST(MyTestGroup, TestAdd_1)
{
p = Add(); // the above function
delete[] p; // <--- Use correct delete for arrays
}