Смотрим, простейшая ситуация:
Код: Выделить всё
class A{};
int main(int argc, char* argv[])
{
A a;
A b;
delete &a; // здесь появляется ошибка
return 0;
}
В чём дело, кто-нибудь может объяснить?
Для меня ситуация удивительна и необъяснима, ибо:
Код: Выделить всё
class A{};
int main(int argc, char* argv[])
{
A a;
delete &a; // нет ошибки!
return 0;
}
Код: Выделить всё
class A{};
int main(int argc, char* argv[])
{
A a;
A b;
delete &b; // нет ошибки!
return 0;
}
Код: Выделить всё
class A{};
int main(int argc, char* argv[])
{
A a;
A b;
delete &b;
delete &a; // снова ошибка!!!
return 0;
}