可能重複:
C++ delete - It deletes my objects but I can still access the data?在Mac OS中刪除的指針仍然在工作C++使用Xcode的X
考慮下面的代碼: -
#include <iostream>
class Test
{
public:
int k=10;
};
int main(int argc, const char * argv[])
{
Test *t = new Test();
delete t;
//t1 = NULL;
t->k=50;
printf("\n%d",t->k);
return 0;
}
其輸出爲50
,但t
已刪除。 爲什麼它不會崩潰? 我在Mac OS X中使用Xcode。
它是不確定的行爲 – billz
因爲內存是不是真的刪除,它只是標記爲「無」,使用它被分配之前爲其他目的 – Aladdin